Excel Formular daten mit XML datei befüllt, anschlioeßend Makro ausführen

Hallo,
habe ein Problem, und wollte fragen, ob Sie vielleicht eine Antwort kennen.
Ich habe ein EXCEL-Formular (Beauftragung_TASKF.xlsm) erstellt, welches mit einer xml Datei befüllt wird. Das Klappt auch !
Danach steht in der Zelle B5 eine Nummer (z.b. 15-1234-5). Mit dieser Nummer soll das ICon „Titelbild.jpg“ in meiner Datenbank gesucht werden, (Unterverzeichnis 15, danach die Nummer, und dann ist das Icon "Titelbild.jpg abgelegt.)
anschließend soll das Titelbild (ICON) im Bereich B7 - C14 dargestellt werden.
Das Makro habe ich geschrieben (ICON einfügen, Modul1), das funktioniert auch, wenn ich es alleine aufrufe,
ohne vorher mit der xml Datei die Daten befülle.
Nur die Kombination XML danach modul / Makro Icon einfügen klappt nicht.
Haben Sie einen Vorschlag ?
Im Voraus für Ihre Mühe herzlichen Dank
Sub Iconeinfugen()

’ Iconeinfugen Makro

Dim Shp As Shape
Dim ShpRng As ShapeRange
Dim PicRange As Range
Dim zeile As String
Dim Zelle As String
Dim ZelleSNR As String

SNZelle = Left$(Range(„B5“), 2)
Zelle = „20“ + SNZelle + „“
ZelleSNR = Range(„B5“)

Set PicRange = Range(„b7:C14“)
Set Shp = ActiveSheet.Shapes.AddPicture( _
Filename:=„C:\ProgramData\SVI\ProfClaimDaten\ProfClaim_PR\Schaden“ & Zelle & ZelleSNR & „“ & „TitelBild.jpg“ _
, LinkToFile:=False, SaveWithDocument:=True _
, Left:=PicRange.Left, Top:=PicRange.Top _
, Width:=PicRange.Width, Height:=PicRange.Height)
Shp.Placement = xlMoveAndSize
Shp.ControlFormat.PrintObject = True

End Sub

Was zeigt der für einen Fehler an?

Tip zur Fehlersuche: lass Dir vom Icon-Makro während der Ausführung den Dateipfad anzeigen (oder in einer anderen Zelle ausgeben) - ist der korrekt? bzw. hilft das bei der Fehlersuche? (was genau steht nach xlm in Zelle B5 und was kommt als Pfad raus bzw. was sollte als Pfad rauskommen?) cu kai

Neben den Debuging Tipps wäre von Kai_Olvermann wäre natürlich die Frage zu klären, welchen Wert die Zelle B5 (Ausgabe SNZelle und ZelleSNR) denn besitzt.

So nebenbei bemerkt: Nicht nur die Namensbenennung der Variablen ist diskussionswürdig, sondern warum steht
SNZelle = Left$(Range("B5"), 2) Zelle = "20" + SNZelle + "\" ZelleSNR = Range("B5")
hier nicht
ZelleSNR = Range("B5") SNZelle = Left$(ZelleSNR, 2) Zelle = "20" + SNZelle + "\"
?

Grüße Georg V.