AW: Einblenden bei Markierung
27.01.2021 10:47:25
UweD
Hallo
- Rechtsclick auf den Tabellenblattreiter
- Code anzeigen
- Code reinkopieren
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Pfad$, Bild$, Ext$, Zeile1%, Spalte%, Da$
Dim WsShell, intText As Integer
Set WsShell = CreateObject("WScript.Shell")
'**** Grundeinstellungen ****
Spalte = 1 '=Spalte A"
Zeile1 = 2 ' erste Zeile mit Daten
'**** Grundeinstellungen **** Ende
If Target.Column = Spalte And Target.Row >= Zeile1 And Target.Value "" Then
Pfad = "E:\Mix\Visitenkarten Prg\" ' Bilddateien liegen hier
Ext = ".jpg" ' Endung der Bilddateien
On Error Resume Next
'Name des Bildes wird zusammengesetzt
Bild = Target
'altes Bild wird gelöscht
Me.Shapes("Bild").Delete
'Zielzelle aktivieren
'Cells(Target.Row, 5).Select
'Prüfung ob Bild zu diesem Namen vorhanden ist
Da = Dir(Pfad & Bild & Ext)
If Da = "" Then 'Bild fehlt
intText = WsShell.Popup("nicht vorhanden!!!", 2, "......", 1)
' Die 2 in der letzten Zeile gibt die Dauer der Öffnung an.
Else ' Bild vorhanden
With Me.Pictures.Insert(Pfad & Bild & Ext)
.Left = Target.Offset(0, 1).Left
.Name = "Bild"
End With
End If
End If
End Sub
Private Sub Worksheet_Deactivate()
On Error Resume Next
Me.Shapes("Bild").Delete
End Sub
Die Bilder müssen so heißen, wie der Zellinhalt. b.Z. Beispiel.jpg
Sie werden eine Spalte weiter links angezeigt.
LG UweD