ich habe eine Frage...
Ich möchte mir abhängig von einem bestimmten Wert z.B in A1 (Dropdown Menü) eine Grafik daneben anzeigen lassen. Nur weiß ich nicht so ganz wie ich das machen soll?
Hat jemand eine Idee oder einen Hinweis für mich?
LG
Alina
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Pfad As String, Ext As String, Bild As String
Dim RngName As Range, RngBild As Range
Set RngName = Range("A1")
Set RngBild = Range("C1")
Pfad = "D:\Mix\Visitenkarten Prg\"
Ext = ".jpg"
If Not Intersect(Target, RngName) Is Nothing Then
If Target > "" Then
'Prüfung ob Bild zu diesem Namen vorhanden ist
Bild = Pfad & Target & Ext
If Dir(Bild) = "" Then 'Foto fehlt
MsgBox Target & " nicht vorhanden!!!"
On Error Resume Next
Me.Shapes("Foto").Delete
On Error GoTo 0
Else ' Bild vorhanden
With Me.Pictures.Insert(Bild)
.Name = "Foto"
.Left = RngBild.Left
.Top = RngBild.Top
End With
End If
Else
On Error Resume Next
Me.Shapes("Foto").Delete
On Error GoTo 0
End If
End If
End Sub
Private Sub Worksheet_Deactivate()
On Error Resume Next
Me.Shapes("Foto").Delete
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim arrWappen() As Variant
Dim arrText() As Variant
Dim lngI As Long
Dim shp As Shape
'Liste der Bilder-Namen
arrWappen = Array("WP_BW", "WP_BY", "WP_BER")
'Liste der zugehörigen Werte der Zelle "A1"
arrText = Array("Baden-Württemberg", "Bayern", "Berlin")
If Target = Range("A1") Then
For lngI = LBound(arrWappen) To UBound(arrWappen)
With Shapes(arrWappen(lngI))
If Range("A1") = arrText(lngI) Then
.Visible = msoTrue
.Left = Range("B1").Left
.Top = Range("B1").Top
Else
.Visible = msoFalse
End If
End With
Next
End If
End Sub