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

  1. Das Schlรผsselwort โ€žReichweiteโ€œ.
  2. Klammern, die dem Schlรผsselwort folgen
  3. Relevanter Zellbereich
  4. 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.

Einzelne Zelle mithilfe der Worksheet.Range-Eigenschaft

Schritt 2) In diesem Schritt

  • Klicken Sie auf Einzelne Zelle mithilfe der Worksheet.Range-Eigenschaft .
  • 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.

Einzelne Zelle mithilfe der Worksheet.Range-Eigenschaft

Schritt 3) Im nรคchsten Schritt

  • Klicken Sie auf die Schaltflรคche Makro Einzelne Zelle mithilfe der Worksheet.Range-Eigenschaft aus dem oberen Menรผ. Es รถffnet sich das Fenster unten.
  • Klicken Sie in diesem Fenster auf die Schaltflรคche โ€žBearbeitenโ€œ.

Einzelne Zelle mithilfe der Worksheet.Range-Eigenschaft

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.

Einzelne Zelle mithilfe der Worksheet.Range-Eigenschaft

Schritt 5) Speichern Sie nun die Datei Einzelne Zelle mithilfe der Worksheet.Range-Eigenschaft und fรผhren Sie das Programm wie unten gezeigt aus.

Einzelne Zelle mithilfe der Worksheet.Range-Eigenschaft

Schritt 6) Sie werden sehen, dass Zelle โ€žA1โ€œ nach der Ausfรผhrung des Programms ausgewรคhlt ist.

Einzelne Zelle mithilfe der Worksheet.Range-Eigenschaft

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

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: