私はこのためのコードを書くのは本当に苦労しています。 したがって、可変の値を持つ4つのセルは、ボタンをクリックしたときに最高値のセルに応じて画像が表示されます。最高の値に応じてExcelで特定の画像を表示
例:セルA1の値が他のセルよりも高い場合は、ボタンをクリックするとピクチャAが表示され、セルB1の値が大きい場合はそのセルに割り当てられているピクチャBが表示されます。
我々は最善を試みたが、解決策を見つけることができませんでした、任意のヘルプは
私はこのためのコードを書くのは本当に苦労しています。 したがって、可変の値を持つ4つのセルは、ボタンをクリックしたときに最高値のセルに応じて画像が表示されます。最高の値に応じてExcelで特定の画像を表示
例:セルA1の値が他のセルよりも高い場合は、ボタンをクリックするとピクチャAが表示され、セルB1の値が大きい場合はそのセルに割り当てられているピクチャBが表示されます。
我々は最善を試みたが、解決策を見つけることができませんでした、任意のヘルプは
をいただければ幸いですまあ、これは些細なものですが、ここで私はそれを行うだろうかです:セルで
Public Sub ShowPic()
Me.s1.Visible = b_is_visible(Me.s1.Name)
Me.s2.Visible = b_is_visible(Me.s2.Name)
End sub
Public Function b_is_visible(str_name As String) As Boolean
If str_name = cells(1,1) Then
b_is_visible = True
end if
End Function
A1あなたはイメージの名前を入れてください。したがって、それに基づいて、画像は可視か非可視かのいずれかになります。画像はフォームにする必要があります。上のコードはフォームにあります。
解決策はたくさんあります。そのうちの1つは、表示したい写真が入ったフォルダがあり、最大値の行として名前を付けることです。例えば。最大値が行3にある場合、picture3.jpg
ファイルが表示されます。
Sub test123()
Dim Rng As Range
Dim maxRow As Integer, maxVal As Integer
Set Rng = Range("A1:A4")
maxVal = Application.WorksheetFunction.Max(Rng)
picNum = Application.Match(maxVal, Rng, 0)
ActiveSheet.Pictures.Delete
ActiveSheet.Pictures.Insert("K:\user files\user 1\pictures\picture" & picNum & ".jpg").Select
End Sub
EDIT:
あなたがイメージを再配置したい場合、あなたはそれの名前を変更し、いくつかの賞賛を使用することによってそれを行うことができます。
Selection.ShapeRange.Name = "Pic1"
ActiveSheet.Shapes("Pic1").Left = ActiveSheet.Cells(2, 2).Left
ActiveSheet.Shapes("Pic1").Top = ActiveSheet.Cells(2, 2).Top
ActiveSheet.Shapes("Pic1").Height = ActiveSheet.Range("G1:G7").Height
ActiveSheet.Shapes("Pic1").Width = ActiveSheet.Range("B1:G1").Width
あなたのアプローチからコードを投稿できますか? – Limak
あなたは解決策を見いだすのが非常に難しくなかったと私は思う:http://stackoverflow.com/questions/9198097/excel-vba-if-cell-value-equals-then-show-hide-images –