Liebe VBA-Freunde,
ich habe ein Problem und komme nicht weiter.
Ich muss den Zoom eines Blattes auslesen. Mit dem üblichen
Msgbox(ActiveSheet.PageSetup.Zoom)
geht es nicht, weil das Ergebnis "Falsch" ist, weil ich die Seite im gleichen Makro so einstelle, das auf eine Seitenbreite skaliert wird:
With ActiveSheet.PageSetup
.Zoom = False
.FitToPagesTall = False
.FitToPagesWide = 1
End With
Ich habe in einem Forum auch schon einen Weg gefunden, wie alles eigentlich wunderbar funktioniert. Hier kann ich erst die Seite auf Seitenbreite formatieren und dann über den folgenden Code den Zoomfaktor auslesen. Wenn ich das Makro Schritt für Schritt ausführe, funktioniert alles wunderbar. In getrennten Makros, die ich händisch nacheinander ausführe, ist das auch kein Problem. Nur, wenn ich den Code in ein Makro zusammenstecke oder von einem dritten Makro hintereinander ausführen lasse, stellt der folgende Code den Zoom einfach nur auf 100%.
Sub Spaltenbreite()
ActiveSheet.Application.ExecuteExcel4Macro "PAGE.SETUP(,,,,,,,,,,,,{1,#N/A})"
ActiveSheet.Application.ExecuteExcel4Macro "PAGE.SETUP(,,,,,,,,,,,,{#N/A,#N/A})"
MsgBox ("Zoom ist " & ActiveSheet.PageSetup.Zoom)
End Sub
Das muss aber leider zusammen ausgeführt werden. Hat jemand eine Idee, woran es liegen könnte? Freue mich auch über ganz andere Lösungsvorschläge.
Vielen, vielen Dank!
Liebe Grüße
Jens
|