Was ist die VBA-Reichweite?
Das VBA-Bereichsobjekt repräsentiert eine Zelle oder mehrere Zellen in Ihrem Excel-Arbeitsblatt. Es ist das wichtigste Objekt von Excel VBA. Mit dem Excel VBA-Bereichsobjekt können Sie auf Folgendes verweisen:
- Eine einzelne Zelle
- Eine Zeile oder eine Spalte von Zellen
- Eine Auswahl von Zellen
- Ein 3-D-Bereich
Wie wir in unserem vorherigen Tutorial besprochen haben, wird dieses VBA zum Aufzeichnen und Ausführen von Makros verwendet. Aber wie VBA identifiziert, welche Daten aus dem Blatt ausgeführt werden müssen. Hier ist VBA Range Objects hilfreich.
In diesem Tutorial lernen Sie:
- Einführung in das Referenzieren von Objekten in VBA
- Verweisen Sie mit der Eigenschaft Worksheet.Range auf eine einzelne Zelle
- Zelleigenschaft
- Range Offset-Eigenschaft
Einführung in das Referenzieren von Objekten in VBA
Referenzieren des VBA-Bereichsobjekts von Excel und des Objektqualifizierers.
- Objektqualifizierer : Dies wird zum Referenzieren des Objekts verwendet. Es gibt die Arbeitsmappe oder das Arbeitsblatt an, auf die Sie sich beziehen.
Um diese Zellenwerte zu bearbeiten, werden Eigenschaften und Methoden verwendet.
- Eigenschaft: Eine Eigenschaft speichert Informationen zum Objekt.
- Methode: Eine Methode ist eine Aktion des Objekts, das sie ausführen wird. Das Bereichsobjekt kann Aktionen wie ausgewählt, kopiert, gelöscht, sortiert usw. ausführen.
VBA folgt dem Objekthierarchiemuster, um auf ein Objekt in Excel zu verweisen. Sie müssen der folgenden Struktur folgen. Denken Sie daran, dass die .dot-Überlagerung das Objekt auf jeder der verschiedenen Ebenen verbindet.
Application.Workbooks.Worksheets.Range
Es gibt zwei Haupttypen von Standardobjekten.
Verweisen auf ein Excel VBA-Bereichsobjekt mithilfe der Range-Eigenschaft
Die Range-Eigenschaft kann auf zwei verschiedene Objekttypen angewendet werden.
- Arbeitsblattobjekte
- Bereichsobjekte
Syntax für die Range-Eigenschaft
- Das Schlüsselwort "Range".
- Klammern, die auf das Schlüsselwort folgen
- Relevanter Zellbereich
- Zitat (" ")
Application.Workbooks("Book1.xlsm").Worksheets("Sheet1").Range("A1")
Wenn Sie wie oben gezeigt auf das Range-Objekt verweisen, wird es als vollständig qualifizierte Referenz bezeichnet . Sie haben Excel genau mitgeteilt, welchen Bereich Sie möchten, welches Blatt und in welchem Arbeitsblatt.
Beispiel : MsgBox-Arbeitsblatt ("sheet1"). Bereich ("A1"). Wert
Mit der Range-Eigenschaft können Sie viele Aufgaben ausführen, z.
- Beziehen Sie sich mit der Eigenschaft range auf eine einzelne Zelle
- Verweisen Sie mit der Eigenschaft Worksheet.Range auf eine einzelne Zelle
- Beziehen Sie sich auf eine ganze Zeile oder Spalte
- Verweisen Sie auf zusammengeführte Zellen mit Worksheet.Range-Eigenschaften und vielem mehr
Daher ist es zu lang, alle Szenarien für Bereichseigenschaften abzudecken. Für die oben genannten Szenarien zeigen wir nur ein Beispiel. Beziehen Sie sich mit der Eigenschaft range auf eine einzelne Zelle.
Verweisen Sie mit der Eigenschaft Worksheet.Range auf eine einzelne Zelle
Um auf eine einzelne Zelle zu verweisen, müssen Sie auf eine einzelne Zelle verweisen.
Die Syntax ist einfach "Range (" Cell ")".
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
- Klicke auf Taste.
- Es öffnet sich ein Fenster.
- Geben Sie hier Ihren Programmnamen ein und klicken Sie auf "OK".
- Sie gelangen zur Excel-Hauptdatei. Klicken Sie im oberen Menü auf die Schaltfläche "Aufnahme stoppen", um die Aufnahme 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 dem Excel auszuwählen.
Schritt 5) Speichern Sie nun die Datei und führen Sie das Programm wie unten gezeigt aus.
Schritt 6) Sie sehen, dass Zelle "A1" nach Ausführung des Programms ausgewählt ist.
Ebenso können Sie eine Zelle mit einem bestimmten Namen auswählen. Zum Beispiel, wenn Sie eine Zelle mit dem Namen "Guru99-VBA Tutorial" suchen möchten. Sie müssen den Befehl wie unten gezeigt ausführen. Es wird die Zelle mit diesem Namen ausgewählt.
Bereich ("Guru99-VBA Tutorial"). Wählen Sie
Um ein anderes Bereichsobjekt hier anzuwenden, sehen Sie das Codebeispiel.
Bereich zur Auswahl der Zelle in Excel | Bereich deklariert |
Für eine einzelne Reihe | Bereich ("1: 1") |
Für eine Spalte | Bereich ("A: A") |
Für zusammenhängende Zellen | Bereich ("A1: C5") |
Für nicht zusammenhängende Zellen | Bereich ("A1: C5, F1: F5") |
Zum Schnitt zweier Bereiche | Bereich ("A1: C5 F1: F5") (Denken Sie bei Kreuzungszellen daran, dass kein Kommaoperator vorhanden ist.) |
Zelle zusammenführen | Bereich ("A1: C5") (Um die Zelle zusammenzuführen, verwenden Sie den Befehl "Zusammenführen") |
Zelleigenschaft
Ähnlich wie im Bereich können Sie in VBA auch "Cell Property". Der einzige Unterschied besteht darin, dass es eine "Element" -Eigenschaft hat, mit der Sie auf die Zellen in Ihrer Tabelle verweisen. Die Zelleigenschaft 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) OR
- Cells.item (1, "A")
Range Offset-Eigenschaft
Mit der Eigenschaft "Bereichsversatz" werden Zeilen / Spalten von ihrer ursprünglichen Position entfernt ausgewählt. 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 A1-Zelle in eine Spalte und eine Zeile. Sie können den Wert von Zeilen- / Spaltenversatz je nach Anforderung ändern. Sie können einen negativen Wert (-1) verwenden, um Zellen rückwärts zu verschieben.
Laden Sie Excel mit dem obigen Code herunter
Laden Sie den obigen Excel-Code herunter
Zusammenfassung :
- Das VBA-Bereichsobjekt repräsentiert eine Zelle oder mehrere Zellen in Ihrem Excel-Arbeitsblatt
- Eine einzelne Zelle
- Eine Zeile oder eine Spalte von Zellen
- Eine Auswahl von Zellen
- Ein 3-D-Bereich
- Zum Bearbeiten von Zellenwerten werden Eigenschaften und Methoden verwendet
- Eine Eigenschaft speichert Informationen über das Objekt
- Eine Methode ist eine Aktion des Objekts, das sie ausführt, wie Auswählen, Zusammenführen, Sortieren usw.
- VBA folgt dem Objekthierarchiemuster, um das Objekt in Excel mit dem Operator .dot zu referenzieren
- Die Range-Eigenschaft kann auf zwei verschiedene Objekttypen angewendet werden
- Arbeitsblattobjekte
- Bereichsobjekte