Excel VBA-Bereichsobjekt
Was ist der VBA-Bereich?
Das VBA-Bereichsobjekt stellt eine Zelle oder mehrere Zellen in Ihrem Excel-Arbeitsblatt dar. Es ist das wichtigste Objekt von Excel VBA. Mithilfe des Excel-VBA-Bereichsobjekts kรถnnen Sie auf Folgendes verweisen:
- Eine einzelne Zelle
- Eine Zeile oder Spalte von Zellen
- Eine Auswahl von Zellen
- Ein 3D-Bereich
Wie wir in unserem vorherigen Tutorial besprochen haben, wird VBA zum Aufzeichnen und Ausfรผhren von Makros verwendet. Aber wie erkennt VBA, welche Daten aus dem Blatt ausgefรผhrt werden mรผssen? Hier sind VBA-Bereichsobjekte hilfreich.
Einfรผhrung in das Referenzieren von Objekten in VBA
Verweisen auf das VBA-Range-Objekt und den Objektqualifizierer von Excel.
- Objektqualifizierer: Dies wird zur Referenzierung des Objekts verwendet. Es gibt die Arbeitsmappe oder das Arbeitsblatt an, auf die Sie sich beziehen.
Um diese Zellwerte zu manipulieren, Immobilien und Methoden werden verwendet.
- Eigentum: Eine Eigenschaft speichert Informationen รผber das Objekt.
- Anleitung: Eine Methode ist eine Aktion des Objekts, die sie ausfรผhren wird. Bereichsobjekte kรถnnen Aktionen wie Auswรคhlen, Kopieren, Lรถschen, Sortieren usw. ausfรผhren.
VBA folgt dem Objekthierarchiemuster, um auf Objekte in Excel zu verweisen. Sie mรผssen der folgenden Struktur folgen. Denken Sie daran, dass der Punkt hier das Objekt auf jeder der verschiedenen Ebenen verbindet.
Application.Workbooks.Worksheets.Range
Es gibt zwei Haupttypen von Standardobjekten.
So verweisen Sie mithilfe der Range-Eigenschaft auf ein Excel VBA-Range-Objekt
Die Range-Eigenschaft kann auf zwei verschiedene Objekttypen angewendet werden.
- Arbeitsblattobjekte
- Bereichsobjekte
Syntax fรผr die Range-Eigenschaft
- Das Schlรผsselwort โReichweiteโ.
- Klammern, die dem Schlรผsselwort folgen
- Relevanter Zellbereich
- Zitat (" ")
Application.Workbooks("Book1.xlsm").Worksheets("Sheet1").Range("A1")
Wenn Sie wie oben gezeigt auf ein Range-Objekt verweisen, wird darauf verwiesen vollqualifizierte Referenz. Sie haben Excel genau mitgeteilt, welchen Bereich Sie mรถchten, welches Blatt und in welchem โโArbeitsblatt.
Beispiel: NachrichtBox Worksheet(โsheet1โ).Range(โA1โ).Value
Mit der Range-Eigenschaft kรถnnen Sie viele Aufgaben ausfรผhren, wie zum Beispiel:
- Beziehen Sie sich mithilfe der Bereichseigenschaft auf eine einzelne Zelle
- Verweisen Sie mithilfe der Worksheet.Range-Eigenschaft auf eine einzelne Zelle
- Beziehen Sie sich auf eine ganze Zeile oder Spalte
- Verweisen Sie auf zusammengefรผhrte Zellen mithilfe der Worksheet.Range-Eigenschaft und vielem mehr
Daher wird es zu langwierig sein, alle Szenarien fรผr Bereichseigenschaften abzudecken. Fรผr die oben genannten Szenarien werden wir nur ein Beispiel zeigen. Beziehen Sie sich mithilfe der Bereichseigenschaft auf eine einzelne Zelle.
Verweisen Sie mithilfe der Worksheet.Range-Eigenschaft auf eine einzelne Zelle
Um auf eine einzelne Zelle zu verweisen, mรผssen Sie sich auf eine einzelne Zelle beziehen.
Die Syntax ist einfach โBereich(โZelleโ)โ.
Hier verwenden wir den Befehl โ.Selectโ, um die einzelne Zelle aus dem Blatt auszuwรคhlen.
Schritt 1) รffnen Sie in diesem Schritt Ihr Excel.
Schritt 2) In diesem Schritt
- Klicken Sie auf
.
- Es รถffnet sich ein Fenster.
- Geben Sie hier Ihren Programmnamen ein und klicken Sie auf die Schaltflรคche โOKโ.
- Sie gelangen zur Excel-Hauptdatei. Klicken Sie im oberen Menรผ auf die Schaltflรคche โAufzeichnung stoppenโ, um die Aufzeichnung des Makros zu beenden.
Schritt 3) Im nรคchsten Schritt
- Klicken Sie auf die Schaltflรคche Makro
aus dem oberen Menรผ. Es รถffnet sich das Fenster unten.
- Klicken Sie in diesem Fenster auf die Schaltflรคche โBearbeitenโ.
Schritt 4) Der obige Schritt รถffnet den VBA-Code-Editor fรผr den Dateinamen โSingle Cell Rangeโ. Geben Sie den Code wie unten gezeigt ein, um den Bereich โA1โ aus Excel auszuwรคhlen.
Schritt 5) Speichern Sie nun die Datei und fรผhren Sie das Programm wie unten gezeigt aus.
Schritt 6) Sie werden sehen, dass Zelle โA1โ nach der Ausfรผhrung des Programms ausgewรคhlt ist.
Ebenso kรถnnen Sie eine Zelle mit einem bestimmten Namen auswรคhlen. Wenn Sie beispielsweise nach einer Zelle mit dem Namen โGuru99- VBA Tutorialโ suchen mรถchten, mรผssen Sie den Befehl wie unten gezeigt ausfรผhren. Dadurch wird die Zelle mit diesem Namen ausgewรคhlt.
Bereich (โGuru99-VBA-Tutorialโ). Auswรคhlen
Um ein anderes Bereichsobjekt anzuwenden, finden Sie hier das Codebeispiel.
| Bereich zum Auswรคhlen einer Zelle in Excel | Bereich deklariert |
|---|---|
| Fรผr eine einzelne Zeile | Bereich (โ1:1โ) |
| Fรผr eine einzelne Spalte | Bereich (โA: Aโ) |
| Fรผr zusammenhรคngende Zellen | Bereich (โA1:C5โ) |
| Fรผr nicht zusammenhรคngende Zellen | Bereich (โA1:C5, F1:F5โ) |
| Fรผr den Schnittpunkt zweier Bereiche | Bereich (โA1:C5 F1:F5โ)
(Denken Sie bei Schnittpunktzellen daran, dass es keinen Kommaoperator gibt) |
| Zelle zusammenfรผhren | Bereich (โA1:C5โ)
(Um eine Zelle zusammenzufรผhren, verwenden Sie den Befehl โzusammenfรผhrenโ). |
Zelleneigenschaft
รhnlich dem Bereich, in VBA Sie kรถnnen auch โZelleneigenschaftโ auswรคhlen. Der einzige Unterschied besteht darin, dass es รผber eine โitemโ-Eigenschaft verfรผgt, mit der Sie auf die Zellen in Ihrer Tabelle verweisen. Die Zelleneigenschaft ist in einer Programmierschleife nรผtzlich.
Zum Beispiel,
Cells.item(Zeile, Spalte). Die beiden folgenden Zeilen beziehen sich auf Zelle A1.
- Cells.item(1,1) ODER
- Cells.item(1,โAโ)
Bereichsoffset-Eigenschaft
Die Eigenschaft โBereichsversatzโ wรคhlt Zeilen/Spalten auรerhalb ihrer ursprรผnglichen Position aus. Auf der Grundlage des deklarierten Bereichs werden Zellen ausgewรคhlt. Siehe Beispiel unten.
Zum Beispiel,
Range("A1").offset(Rowoffset:=1, Columnoffset:=1).Select
Das Ergebnis hierfรผr ist Zelle B2. Die Offset-Eigenschaft verschiebt die Zelle A1 um eine Spalte und eine Zeile weiter. Sie kรถnnen den Wert von rowoffset/columnoffset je nach Bedarf รคndern. Sie kรถnnen einen negativen Wert (-1) verwenden, um Zellen nach hinten zu verschieben.
Laden Sie Excel herunter, das den obigen Code enthรคlt
Laden Sie den obigen Excel-Code herunter
Zusammenfassung
- Das VBA-Bereichsobjekt stellt eine Zelle oder mehrere Zellen in Ihrem Excel-Arbeitsblatt dar
- Eine einzelne Zelle
- Eine Zeile oder Spalte von Zellen
- Eine Auswahl von Zellen
- Ein 3D-Bereich
- Um Zellwerte zu manipulieren, Immobilien und Methoden werden verwendet
- Eine Eigenschaft speichert Informationen รผber das Objekt
- Eine Methode ist eine Aktion des Objekts, die sie ausfรผhrt, z. B. Auswรคhlen, Zusammenfรผhren, Sortieren usw.
- VBA folgt dem Objekthierarchiemuster, um mit dem .dot-Operator auf Objekte in Excel zu verweisen
- Die Range-Eigenschaft kann auf zwei verschiedene Objekttypen angewendet werden
- Arbeitsblattobjekte
- Bereichsobjekte






