Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Range("A:B").Select ActiveWindow.Zoom = True

Forumthread: Range("A:B").Select ActiveWindow.Zoom = True

Range("A:B").Select ActiveWindow.Zoom = True
Claudia
Hallo!
Eine Frage an die Experten:
Geht folgender Code auch ohne zu selectieren?
Range("A:B").Select
ActiveWindow.Zoom = True
Danke u. Gruß
Claudia
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Range("A:B").Select ActiveWindow.Zoom = True
13.01.2012 07:20:10
Josef

Hallo Claudia,
ActiveWindow.Zoom = True
reicht vollkommen.

« Gruß Sepp »

Anzeige
AW: Range("A:B").Select ActiveWindow.Zoom = True
13.01.2012 07:38:05
MatthiasG
Hallo Sepp,
das reicht m.E. nicht, denn mit dem Befehl wird das Fenster auf die aktuelle Auswahl gezoomt.
Es sei denn, die Auswahl ist bereits getroffen.
Gruß Matthias
Na gut, aber so hab ich das ...
13.01.2012 07:44:33
Josef

... gar nicht gesehen, ich brauch wohl noch einen starken Kaffee.
Hast natürlich recht, Matthias.

« Gruß Sepp »

Anzeige
AW: Na gut, aber so hab ich das ...
13.01.2012 08:08:40
Claudia
Hallo beiden,
also ohne Select keine Auswahl, wenn ich richtig verstehe?
Gruß
Claudia
AW: Na gut, aber so hab ich das ...
13.01.2012 08:21:07
MatthiasG
Hallo Claudia,
also ohne Select keine Auswahl, wenn ich richtig verstehe?
genau, und ohne yes kein ja ;-)
im Ernst: irgend ein Bereich ist immer ausgewählt auf dem Tabellenblatt. Die Methode .Zoom = True dient zur Anpassung des Zoomfaktors auf den ausgewählten Bereich.
Wenn Du statt "True" eine Zahl einsetzt, wird der Zoomfaktor auf die entsprechende Prozentzahl gesetzt.
Um die ursprüngliche Auswahl zu behalten, kannst du diesen Code verwenden:

Sub ZoomSetzen()
Dim s As Range
Application.ScreenUpdating = False
Set s = Selection 'Auswahl merken
ActiveSheet.Range("A:H").Select
ActiveWindow.Zoom = True
s.Select 'Auswahl wiederherstellen
Application.ScreenUpdating = True
End Sub
Gruß Matthias
Anzeige
AW: Na gut, aber so hab ich das ...
13.01.2012 08:30:32
Claudia
Hallo Matthias,
danke für die Ausführungen. Ich werde mit der alten Methode weiterleben.
Gruß
Claudia
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

ActiveWindow.Zoom in Excel VBA richtig anwenden


Schritt-für-Schritt-Anleitung

Um den Zoom eines Fensters in Excel VBA zu setzen, ohne eine Auswahl zu treffen, kannst du einfach den folgenden Code verwenden:

ActiveWindow.Zoom = True

Dieser Befehl zoomt auf den aktuell aktiven Bereich. Wenn du eine spezifische Zoomstufe festlegen möchtest, kannst du stattdessen eine Zahl angeben:

ActiveWindow.Zoom = 150 ' Setzt den Zoom auf 150%

Stelle sicher, dass das richtige Arbeitsblatt aktiv ist, wenn du den Befehl ausführst.


Häufige Fehler und Lösungen

Fehler: Der Zoom funktioniert nicht, wenn ich keinen Bereich auswähle.

Lösung: Es ist nicht notwendig, einen Bereich mit Select auszuwählen, da ActiveWindow.Zoom auf den aktuell aktiven Bereich angewendet wird. Wenn du jedoch sicherstellen möchtest, dass ein bestimmter Bereich gezoomt wird, kannst du den Bereich vor dem Zoom festlegen:

ActiveSheet.Range("A:H").Select
ActiveWindow.Zoom = True

Fehler: Ich bekomme eine Fehlermeldung, wenn ich ActiveWindow.Zoom verwende.

Lösung: Überprüfe, ob das aktive Fenster tatsächlich ein Excel-Fenster ist. Wenn du beispielsweise in einem anderen Programm bist, wird der Befehl nicht funktionieren.


Alternative Methoden

Eine alternative Methode, um den Zoom eines bestimmten Bereichs in Excel VBA zu setzen, ist, die ursprüngliche Auswahl zu speichern und anschließend den Zoom auf den gewünschten Bereich anzuwenden. Hier ein Beispiel:

Sub ZoomSetzen()
    Dim s As Range
    Application.ScreenUpdating = False
    Set s = Selection ' Auswahl speichern
    ActiveSheet.Range("A:H").Select
    ActiveWindow.Zoom = True
    s.Select ' Auswahl wiederherstellen
    Application.ScreenUpdating = True
End Sub

Diese Methode ist nützlich, wenn du nach dem Zoom den vorherigen Bereich wiederherstellen möchtest.


Praktische Beispiele

  1. Zoom auf den gesamten Datenbereich: Wenn du den Zoom auf den gesamten Datenbereich eines Arbeitsblatts anwenden möchtest, kannst du den Code wie folgt anpassen:
ActiveSheet.UsedRange.Select
ActiveWindow.Zoom = True
  1. Zoom auf eine bestimmte Spalte: Um nur auf eine bestimmte Spalte zu zoomen, verwende:
ActiveSheet.Columns("A").Select
ActiveWindow.Zoom = True

Tipps für Profis

  • Vermeide unnötige Select-Befehle: Du kannst oft die Select-Methode vermeiden, um deinen Code schneller und effizienter zu machen. Verwende stattdessen direkte Bezugnahmen auf Objekte.

  • Verwende Application.ScreenUpdating: Setze Application.ScreenUpdating auf False, um das Flackern des Bildschirms während des Ausführens von VBA-Code zu vermeiden.

  • Zoom auf spezifische Werte setzen: Wenn du mit verschiedenen Zoomstufen arbeitest, ist es hilfreich, diese als Konstanten zu definieren:

Const ZOOM_100 As Integer = 100
ActiveWindow.Zoom = ZOOM_100

FAQ: Häufige Fragen

1. Kann ich den Zoom auch auf einen bestimmten Wert setzen? Ja, anstelle von True kannst du einen spezifischen Zoomwert angeben, z. B. ActiveWindow.Zoom = 150, um auf 150% zu zoomen.

2. Was passiert, wenn ich ActiveWindow.Zoom ohne vorherige Auswahl verwende? Der Befehl setzt den Zoom auf den aktuell aktiven Bereich. Sollte kein Bereich aktiv sein, wird der Zoom nicht angewendet.

3. Funktioniert dieser Code in allen Excel-Versionen? Ja, der Code sollte in allen modernen Versionen von Excel funktionieren, die VBA unterstützen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige