我很難爲此編寫代碼。 因此,我們有四個單元格的變量值,一個圖片應該出現,取決於單擊按鈕時具有最高值的單元格。根據最高值在Excel中顯示特定圖像
示例:如果單元格A1的值高於其他單元格,單擊按鈕時應顯示圖片A,如果單元格B1的值較高,則應顯示分配給該單元格的圖片B。
我們盡力了,但無法找到一個解決方案,任何幫助,將不勝感激
我很難爲此編寫代碼。 因此,我們有四個單元格的變量值,一個圖片應該出現,取決於單擊按鈕時具有最高值的單元格。根據最高值在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你應該把圖片的名字。因此,基於它,圖像將是可見或不可見的。圖像應該是一種形式。上面的代碼是在表單中。
有很多解決方案。其中之一是有一些文件夾與你想要顯示的圖片,並將它們命名爲最大值的行。例如。如果最大值在第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
編輯:
如果你想重新定位圖像,你也可以重新命名,並使用一些讚揚做到這一點。
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 –