VBA Excel: Problem, Bilder überlagern sich

Hallo,

vielleicht kann mir ja jemand auf die Sprünge helfen :smile:

Ich füge aktuell mit untenstehendem Code 3 Bilder ein und möchte diese jetzt genau positionieren (gleicher Abstand von oben, horizontal gleichmäßig verteilt). Das Problem ist, dass sich alle 3 Bilder überlagern trotz unterschiedlicher Positionsangabe. Hab versucht mir den entsprechenden Code zusammenzubauen, aber irgendwie funktioniert das nicht wie ich möchte.

Der entsprechende Teil meines Codes (hab für die Positionen momentan einfach Beispiels-Koordinaten gewählt):

Tabelle2.Select
Call BildEinfuegen(„D3“, „D3“, „\Bild1“)

ActiveSheet.shapes(„Bild1“).CopyPicture Appearance:=xlScreen, Format:=xlPicture
ActiveSheet.Pictures.Paste.Select
ActiveSheet.Pictures(„Bild1“).Top = 50 '50 Punkte Abstand vom oberen Rand
ActiveSheet.Pictures(„Bild1“).Left = 32 '32 Punkte Abstand vom linken Rand
ActiveSheet.shapes(„Bild1“).Delete

Tabelle2.Select
Call BildEinfuegen(„I3“, „I3“, „\Bild2“)

ActiveSheet.shapes(„Bild2“).CopyPicture Appearance:=xlScreen, Format:=xlPicture
ActiveSheet.Pictures.Paste.Select
ActiveSheet.Pictures(„Bild2“).Top = 50 '50 Punkte Abstand vom oberen Rand
ActiveSheet.Pictures(„Bild2“).Left = 100 '100 Punkte Abstand vom linken Rand
ActiveSheet.shapes(„Bild2“).Delete

Tabelle2.Select
Call BildEinfuegen(„L3“, „L3“, „\Bild3“)

ActiveSheet.shapes(„Bild3“).CopyPicture Appearance:=xlScreen, Format:=xlPicture
ActiveSheet.Pictures.Paste.Select
ActiveSheet.Pictures(„Bild3“).Top = 50 '50 Punkte Abstand vom oberen Rand
ActiveSheet.Pictures(„Bild3“).Left = 150 '150 Punkte Abstand vom linken Rand
ActiveSheet.shapes(„Bild3“).Delete

Vielen Dank schon mal für eure Hilfe!!!
Anna

Hab das Problem inzwischen gelöst… jetzt bin ich allerdings auf ein weiteres Problem gestoßen: die Grafiken sind unterschiedlich groß.
Jetzt habe ich versucht meinen Code um ein paar weitere Zeilen zu erweitern, um die Grafiken alle gleich groß zu bekommen. Jedoch bekomme ich immer einen Laufzeitfehler ‚1004‘: Anwendungs- oder objektorientierter Fehler.

Kann mir bitte jemand auf die Sprünge helfen?
Hab den Code einfach unter die oben genannten Zeilen angehängt…

ActiveSheet.Pictures.Insert(„Bild1“).Select
ActiveSheet.Pictures.Insert(„Bild2“).Select
ActiveSheet.Pictures.Insert(„Bild3“).Select
wantedhigh = 150 'Höhe noch anpassen
wantedwide = 120 'Breite noch anpassen
For Each Pictures In ActiveSheet.shapes
Pictures.Select
actualhigh = Pictures.Height
actualwide = Pictures.Width
If (actualhigh / actualwide) > (wantedhigh / wantedwide) Then
Pictures.Height = wantedhigh
Else
Pictures.Width = wantedwide
End If
Next

VG
Anna