Ich habe mir mit Eurer Hilfe zwei Makros zusammengestellt:
Ich markiere eine Grafik und starte das Makro "FormatEinlesen".
Die aktuellen Grafikeinstellungen werden eingelesen.
Dann markiere ich eine andere Grafik und starte das Makro "FormatZuweisen".
Die Grafikeinstellungen der ersten Grafik werden dieser Grafik zugewiesen.
Die Makros funktionieren wunderbar und sie tun ohne weiteres ihren Dienst.
Meine Frage wäre: Ist eine Vereinfachung der ganzen Sache möglich? Wäre
es konkret möglich alles in ein Makro zu verpacken?
Ist Folgendes möglich:
1. erste Grafik markieren
2. Makro starten (die Einstellungen werden eingelesen)
3. zweite Grafik markieren (mit dem Markieren der zweiten Grafik werden auch
schon die Einstellungen zugewiesen)
Vielleicht kann mir jemand einen Tipp geben. Dafür wäre ich sehr dankbar.
Derweil schöne Grüße
Andreas
Option Explicit
Dim Links, Oben, Rechts, Unten, Höhe, Breite
Sub FormatEinlesen()
Dim sh As Shape
Select Case TypeName(Selection)
Case "Picture":
Set sh = ActiveSheet.Shapes(Selection.Name)
With sh
Links = .PictureFormat.CropLeft
Oben = .PictureFormat.CropTop
Rechts = .PictureFormat.CropRight
Unten = .PictureFormat.CropBottom
Höhe = .Height
Breite = .Width
End With
Case Else
MsgBox "Keine Grafik!", , TypeName(Selection)
End Select
End Sub
Sub FormatZuweisen()
Dim sh As Shape
Select Case TypeName(Selection)
Case "Picture":
Set sh = ActiveSheet.Shapes(Selection.Name)
With sh
.LockAspectRatio = msoFalse
.PictureFormat.CropLeft = Links
.PictureFormat.CropTop = Oben
.PictureFormat.CropRight = Rechts
.PictureFormat.CropBottom = Unten
.Height = Höhe
.Width = Breite
.LockAspectRatio = msoTrue
End With
Case Else
MsgBox "Keine Grafik!", , TypeName(Selection)
End Select
End Sub