VBA ActiveSheet & So aktivieren oder wählen Sie ein Blatt aus

In diesem Artikel wird das ActiveSheet-Objekt in VBA erläutert. Es wird auch erläutert, wie Sie Arbeitsblätter aktivieren, auswählen und zu Arbeitsblättern gehen (und vieles mehr). Lesen Sie unser vollständiges Handbuch zu VBA-Arbeitsblättern, um weitere Informationen zum Arbeiten mit Arbeitsblättern in VBA zu erhalten.

ActiveSheet

In VBA bezieht sich ActiveSheet auf das derzeit aktive Arbeitsblatt. Es kann immer nur ein Blatt aktiv sein.

Arbeitsblatt aktivieren (Einrichten des ActiveSheet)

Um das ActiveSheet einzustellen, verwenden Sie Worksheet.Activate:

1 Arbeitsblätter("Eingabe").Aktivieren

Der Befehl „Blatt aktivieren“ wird tatsächlich zum Blatt „gehen“ und das sichtbare Blatt ändern.

Im obigen Beispiel wird der Name Sheet (Tab) verwendet. Stattdessen können Sie den VBA-Codenamen für das Arbeitsblatt verwenden:

1 Blatt1.Aktivieren

ActiveSheet-Name

So erhalten Sie den ActiveSheet-Namen:

1 msgbox ActiveSheet.name

Ausgewählte Tabellenblätter im Vergleich zu ActiveSheet

Zu jedem Zeitpunkt kann nur ein Blatt das ActiveSheet sein. Es können jedoch mehrere Arbeitsblätter gleichzeitig ausgewählt werden.

Wenn mehrere Arbeitsblätter ausgewählt sind, wird nur das „oberste“ Arbeitsblatt als aktiv betrachtet (das ActiveSheet).

Arbeitsblatt auswählen

Wenn Sie ein Arbeitsblatt auswählen möchten, anstatt es zu aktivieren. Verwenden Sie stattdessen .Select.

Arbeitsblatt nach Tab-Name auswählen

Dies wählt ein Arbeitsblatt basierend auf seinem Blattregisternamen aus

1 Sheets("Input").Select

Arbeitsblatt nach Indexnummer auswählen

Dadurch wird ein Arbeitsblatt basierend auf seiner Position relativ zu anderen Registerkarten ausgewählt

1 Arbeitsblätter(1).Wählen

Arbeitsblatt mit VBA-Codenamen auswählen

1 Blatt1.Wählen

Das Auswählen von Arbeitsblättern nach Codenamen kann Fehler verhindern, die durch Änderungen des Arbeitsblattnamens verursacht werden.

Aktuelles Arbeitsblatt auswählen

Um das aktuelle Arbeitsblatt auszuwählen, verwenden Sie das ActiveSheet-Objekt:

1 ActiveSheet.Select

Weitere Beispiele zum Aktivieren / Auswählen von Tabellenblättern

Setzen Sie ActiveSheet auf Variable

Dadurch wird das ActiveSheet einer Arbeitsblattobjektvariablen zugewiesen.

123 Dim ws als ArbeitsblattSet ws = ActiveSheet

ActiveSheet-Namen ändern

Dadurch wird der ActiveSheet-Name geändert.

1 ActiveSheet.Name = "NeuerName"

Mit ActiveSheet

Mit der With-Anweisung können Sie Ihren Code optimieren, wenn Sie mit Objekten (wie Sheets oder ActiveSheet) arbeiten.

12345 Mit ActiveSheet.Name = "StartFresh".Zellen.Clear.Bereich("A1").Wert = .NameEnde mit

Beachten Sie, dass Sie „ActiveSheet“ nicht vor jeder Codezeile wiederholen müssen. Dies kann eine enorme Zeitersparnis sein, wenn Sie mit einer langen Liste von Befehlen arbeiten.

Durchlaufen ausgewählter Blätter

Das folgende Makro durchläuft alle ausgewählten Blätter und zeigt ihre Namen an.

12345678 Unter GetSelectedSheetsName()Dim ws als ArbeitsblattFür jedes ws in ActiveWindow.SelectedSheetsMsgBox ws.NameNächstes wsEnd Sub

Gehe zum nächsten Blatt

Dieser Code geht in das nächste Blatt. Wenn das ActiveSheet das letzte Blatt ist, wird es zum ersten Blatt in der Arbeitsmappe gehen.

12345 Wenn ActiveSheet.Index = Worksheets.Count ThenArbeitsblätter(1).AktivierenAndersActiveSheet.Next.ActivateEnde Wenn

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave