VBA-Arbeitsblätter - Wie verwende ich ein Arbeitsblattobjekt in VBA?

Inhaltsverzeichnis

Excel VBA-Arbeitsblätter

Excel ist eine Arbeitsmappe und enthält in dieser Arbeitsmappe Arbeitsblätter oder Arbeitsblätter. Es ist sehr wichtig, das Konzept der Arbeitsblätter in VBA zu verstehen, da wir ständig mit Arbeitsblättern arbeiten. In normalen Excel-Dateien wird es als Arbeitsblatt bezeichnet, in der VBA-Terminologie jedoch als "Arbeitsblatt". Alle Sammlungen eines Arbeitsblatts werden als "Arbeitsblätter" bezeichnet.

In VBA ist das Arbeitsblatt ein Objekt. Es gibt zwei Möglichkeiten, auf das Arbeitsblatt zu verweisen: eine mit dem Objekt „Arbeitsblatt“ und eine andere mit dem Objekt „Blätter“.

Ich weiß, Ihre Frage ist, was der Unterschied zwischen ihnen ist. In Excel sehen wir zwei Arten von Blättern, eines sind reguläre Arbeitsblätter und eines sind Diagrammblätter.

Auf der Registerkarte Arbeitsblatt in Excel werden nur die Arbeitsblätter in der Arbeitsmappe mit Ausnahme von Diagrammblättern berücksichtigt. "Blätter" berücksichtigt alle Arbeitsblätter in der Arbeitsmappe, einschließlich des Diagrammblatts. Schauen Sie sich zum Beispiel das folgende Bild an.

Oben haben wir insgesamt 5 Blätter. Von diesen 5 Blättern sind 3 Arbeitsblätter und 2 Diagrammblätter.

Hier beträgt die Anzahl der "Arbeitsblätter" 3 und die Anzahl der "Blätter" 2.

Schauen Sie sich nun das folgende Bild an.

Hier sind alle Blätter Arbeitsblätter, daher beträgt die Anzahl der "Arbeitsblätter" und "Blätter" 3.

Wenn Sie als Teil des Codes Arbeitsblätter verwenden möchten, merken sich Objekte diesen Punkt.

Syntax von VBA-Arbeitsblättern

Wie gesagt, das Arbeitsblatt ist eine Objektvariable. Dies hat jedoch auch Syntax.

Der Index ist nichts, was die Arbeitsblattnummer ist, auf die wir uns beziehen. Wie Sie am Ende sehen können, wird es als Objekt bezeichnet.

Beispiel: Arbeitsblatt (1). Auswählen bedeutet, das erste Arbeitsblatt der Arbeitsmappe auszuwählen. Es spielt keine Rolle, wie das Arbeitsblatt heißt. Unabhängig davon, welches Arbeitsblatt zuerst in die Arbeitsmappe eingefügt wird, wird ausgewählt.

Wir können das Arbeitsblatt auch mit seinem Namen bezeichnen. Wir müssen das Ganze erwähnen, da es sich um einen Arbeitsblattnamen in doppelten Anführungszeichen handelt.

Beispiel: Arbeitsblatt („Verkaufsblatt“). Auswählen bedeutet, dass Sie das Blatt mit dem Namen „Verkaufsblatt“ auswählen. Hier spielt es keine Rolle, wie die Nummer des Arbeitsblatts lautet, es wird immer das angegebene Arbeitsblatt ausgewählt.

Wie verwende ich ein Arbeitsblattobjekt in VBA?

Beispiel 1

Angenommen, Ihre Arbeitsmappe enthält insgesamt 5 Blätter, und die Namen dieser Arbeitsblätter lauten "Arbeitsblatt 1", "Arbeitsblatt 2", "Arbeitsblatt 3", "Diagrammblatt 1" und "Diagrammblatt 2".

Wenn ich das Arbeitsblatt anhand der Nummerierung auswähle, kann ich die Nummer als Arbeitsblattreferenz verwenden.

Arbeitsblatt (2). Auswählen bedeutet, dass das zweite Arbeitsblatt der Arbeitsmappe ausgewählt wird.

Code:

Sub Worksheet_Example1 () Arbeitsblätter (2) .Wählen Sie End Sub

Ich werde diesen Code mit der Taste F5 oder manuell ausführen und das Ergebnis sehen.

Jetzt werde ich die Blattnummer auf 3 ändern.

Code:

Sub Worksheet_Example1 () Arbeitsblätter (3) .Wählen Sie End Sub

Sehen Sie nun, was passiert, wenn Sie den Code manuell ausführen oder den F5-Schlüsselcode verwenden.

Wenn man sich das obere Bild sehen, hatte er das 4 ausgewählt th Arbeitsblatt , wenn ich die 3 auszuwählen gefragt rd Arbeitsblatt.

Dies liegt daran, dass ich das Arbeitsblattobjekt und nicht das Blattobjekt verwendet habe. Wie ich bereits sagte, berücksichtigt das Objekt "Arbeitsblätter" nur Arbeitsblätter, keine Diagrammblätter.

Verwenden Sie das Blattobjekt, um das dritte Blatt aller Blätter in der Arbeitsmappe auszuwählen.

Code:

Unterarbeitsblatt_Beispiel1 ()

Blätter (3) .Wählen Sie

End Sub

Jetzt wird das genaue dritte Blatt ausgewählt.

Beispiel 2 - Wählen Sie Arbeitsblätter nach Namen aus

Wenn Sie die Blätter nach Namen auswählen, ist ihr Name die genaue Art, auf das Blatt zu verweisen. Wenn Sie beispielsweise das Blatt „Arbeitsblatt 3“ auswählen möchten, können Sie den folgenden Code verwenden.

Code:

Sub Worksheet_Example2 () Arbeitsblätter ("Arbeitsblatt 3"). Wählen Sie End Sub

Dadurch wird das genaue Blatt ausgewählt. Es spielt keine Rolle, wo es in der Arbeitsmappe platziert wird.

Wenn Sie jedoch versucht haben, mit dem Objekt "Arbeitsblätter" auf das Diagrammblatt zuzugreifen, wird der Fehler "Index außerhalb des Bereichs" angezeigt.

Code:

Sub Worksheet_Example2 () Arbeitsblätter ("Chart Sheet 1"). Wählen Sie End Sub

Führen Sie diesen Code über die Taste F5 oder manuell aus und sehen Sie das Ergebnis.

Beispiel 3 - Problem mit dem Arbeitsblattnamen

Es gibt noch ein Problem beim Verweisen der Blätter auf ihren Namen. Wenn jemand den Namen des Arbeitsblatts ändert, wird erneut der Fehler "Index außerhalb des Bereichs" angezeigt.

Um dieses Problem zu beheben, rufen Sie den Visual Basic-Editor auf, indem Sie die Taste ALT + F11 drücken.

Wählen Sie nun den Blattnamen und drücken Sie die Taste F4 , um das Eigenschaftenfenster anzuzeigen.

In diesen Eigenschaften ändert das Fenster den Namen des Arbeitsblatts in Ihren Namen.

Eine interessante Sache hier ist, dass wir, obwohl wir den Namen des Arbeitsblatts von "Arbeitsblatt 1" in "WS1" geändert haben, immer noch den gleichen Namen in der Arbeitsmappe sehen können.

Jetzt können wir dieses Blatt mit dem Namen "WS1" bezeichnen.

Code:

Sub Worksheet_Example2 () Arbeitsblätter ("WS1"). Wählen Sie End Sub

Jetzt spielt es keine Rolle, wer den Namen des Arbeitsblatts ändert. Unser Code bezieht sich jedoch auf dasselbe Blatt, solange er das im visuellen Basiseditor nicht ändert.

Beispiel 4 - Ermitteln Sie die Anzahl der Gesamtblätter in der Arbeitsmappe

Ein Arbeitsblatt ist ein Objekt, und wir können alle damit verbundenen Eigenschaften und Methoden verwenden. Was machen wir mit Arbeitsblättern?

Wir fügen Arbeitsblätter ein. Wir benennen Arbeitsblätter um. Wir löschen Arbeitsblätter und viele andere Dinge, die wir damit machen.

Geben Sie das Objekt „Arbeitsblätter“ ein und setzen Sie einen Punkt, um alle Optionen anzuzeigen.

Verwenden Sie die VBA Count-Eigenschaft, um die Anzahl der Arbeitsblätter abzurufen.

Code:

Sub Worksheet_Example3 () Dim i As Long i = Arbeitsblätter.Count MsgBox i End Sub

Dies zeigt die Anzahl der Arbeitsblätter.

Obwohl es 5 Blätter gibt, haben wir die Zählung als 3 erhalten, da die anderen 2 Blätter Diagrammblätter sind.

Verwenden Sie das Objekt "Blätter", um die Gesamtzahl der Blätter zu ermitteln.

Code:

Sub Worksheet_Example3 () Dim i As Long i = Sheets.Count MsgBox i End Sub

Dies zeigt die vollständige Anzahl der Blätter.

Beispiel 5 - Methoden mit Arbeitsblattobjekt

Nach Eingabe des Arbeitsblattobjekts können wir auf alle damit verbundenen Eigenschaften und Objekte zugreifen. Wir können ein neues Blatt hinzufügen. Wir können löschen usw.

Neues Blatt hinzufügen.

Arbeitsblatt.Add

Arbeitsblatt löschen

Arbeitsblatt ("Blattname"). Löschen

So ändern Sie den Namen des Arbeitsblatts

Arbeitsblatt ("Blattname"). Name = "Neuer Name"

Interessante Beiträge...