VBA-Auswahlbereich - Wie wähle ich einen Bereich in Excel VBA aus?

Inhaltsverzeichnis

Excel VBA-Auswahlbereich

Nachdem die Basis mit VBA gefüllt wurde, ist es wichtig zu verstehen, wie mit einer Reihe von Zellen im Arbeitsblatt gearbeitet wird. Sobald Sie praktisch die meiste Zeit mit der Ausführung der Codes beginnen, müssen Sie mit einer Reihe von Zellen arbeiten. Daher ist es wichtig zu verstehen, wie mit einer Reihe von Zellen gearbeitet wird. Ein solches Konzept ist VBA „Selection of Range“. In diesem Artikel zeigen wir Ihnen, wie Sie mit dem Auswahlbereich in Excel VBA arbeiten.

Auswahl und Bereich sind zwei verschiedene Themen, aber wenn wir sagen, dass der Bereich oder die Auswahl des Bereichs ausgewählt werden soll, handelt es sich um ein einziges Konzept. RANGE ist ein Objekt, "Selection" ist eine Eigenschaft und "Select" ist eine Methode. Menschen neigen dazu, mit diesen Begriffen zu verwechseln. Es ist wichtig, die Unterschiede im Allgemeinen zu kennen.

Wie wähle ich einen Bereich in Excel VBA aus?

Beispiel 1

Angenommen, Sie möchten dann die Zelle A1 im Arbeitsblatt auswählen. Zuerst müssen wir die Zellenadresse mithilfe eines RANGE-Objekts wie unten angeben.

Code:

Nachdem Sie die Zelle erwähnt haben, die wir auswählen müssen, setzen Sie einen Punkt, um die IntelliSense-Liste anzuzeigen, die dem RANGE-Objekt zugeordnet ist.

Bilden Sie aus dieser Vielzahl von Listen die Methode „Auswählen“.

Code:

Sub Range_Example1 () Range ("A1"). Wählen Sie End Sub

Dieser Code wählt nun die Zelle A1 im aktiven Arbeitsblatt aus.

Wenn Sie die Zelle in den verschiedenen Arbeitsblättern auswählen möchten, müssen Sie zuerst das Arbeitsblatt anhand seines Namens angeben. Um das Arbeitsblatt anzugeben, müssen wir das Objekt „WORKSHEET“ verwenden und den Arbeitsblattnamen in doppelte Anführungszeichen eingeben.

Wenn Sie beispielsweise die Zelle A1 im Arbeitsblatt „Datenblatt“ auswählen möchten, geben Sie zuerst das Arbeitsblatt wie unten angegeben an.

Code:

Sub Range_Example1 () Arbeitsblätter ("Datenblatt") End Sub

Fahren Sie dann mit dem Code fort, um anzugeben, was in diesem Blatt zu tun ist. In "Datenblatt" müssen wir die Zelle A1 auswählen, damit der Code BEREICH ("A1") lautet. Wählen Sie.

Code:

Sub Range_Example1 () Arbeitsblätter ("Datenblatt"). Bereich ("A1"). Wählen Sie End Sub

Wenn Sie versuchen, diesen Code auszuführen, wird der folgende Fehler angezeigt.

Der Grund dafür ist: "Wir können das Bereichsobjekt und die Auswahlmethode nicht direkt für das Arbeitsblattobjekt angeben."

Zuerst müssen wir das VBA-Arbeitsblatt auswählen oder aktivieren, und dann können wir alles tun, was wir wollten.

Code:

Sub Range_Example1 () Arbeitsblätter ("Datenblatt"). Aktivieren Sie den Bereich ("A1"). Wählen Sie End Sub

Dadurch wird nun die Zelle A1 im Arbeitsblatt „Datenblatt“ ausgewählt.

Beispiel 2 - Arbeiten mit dem aktuell ausgewählten Bereich

Auswählen ist etwas anderes und das Arbeiten mit einem bereits ausgewählten Zellbereich ist anders. Angenommen, Sie möchten einen Wert "Hallo VBA" in die Zelle A1 einfügen, dann können wir dies auf zwei Arten tun.

Erstens können wir den VBA-Code direkt als RANGE ("A1") übergeben. Wert = "Hallo, VBA."

Code:

Sub Range_Example1 () Range ("A1"). Value = "Hello VBA" End Sub

Dieser Code fügt lediglich den Wert "Hello VBA" in die Zelle A1 ein, unabhängig davon, welche Zelle gerade ausgewählt ist.

Schauen Sie sich das obige Ergebnis des Codes an. Wenn wir diesen Code ausführen, hat er den Wert "Hallo VBA" eingefügt, obwohl die aktuell ausgewählte Zelle B2 ist.

Zweitens können wir den Wert mithilfe der Eigenschaft „Selection“ in die Zelle einfügen. Dazu müssen wir zuerst die Zelle manuell auswählen und den Code ausführen.

Code:

Sub Range_Example1 () Selection.Value = "Hallo VBA" End Sub

Mit diesem Code wird der Wert "Hello VBA" in die aktuell ausgewählte Zelle eingefügt. Schauen Sie sich zum Beispiel das folgende Beispiel für die Ausführung an.

Als ich den Code ausführte, war meine aktuell ausgewählte Zelle B2, und unser Code fügte denselben Wert in die aktuell ausgewählte Zelle ein.

Jetzt werde ich die Zelle B3 auswählen und ausführen, dort erhalten wir auch den gleichen Wert.

Eine weitere Sache, die wir mit der Eigenschaft "Auswahl" tun können, ist, dass wir auch Werte in mehr als eine Zelle einfügen können. Zum Beispiel werde ich jetzt den Zellenbereich von A1 bis B5 auswählen.

Wenn ich nun den Code für alle ausgewählten Zellen ausführe, erhalten wir den Wert "Hallo VBA".

Der einfache Unterschied zwischen der Angabe der Zellenadresse durch das RANGE-Objekt und der Selection-Eigenschaft besteht darin, dass im Range-Objektcode Wert in die explizit angegebenen Zellen eingefügt wird.

Im Auswahlobjekt spielt es jedoch keine Rolle, in welcher Zelle Sie sich befinden. Der angegebene Wert wird in alle ausgewählten Zellen eingefügt.

Dinge, an die man sich hier erinnern sollte

  • Wir können die select-Methode nicht direkt unter Selection-Eigenschaft angeben.
  • RANGE ist ein Objekt und die Auswahl ist eine Eigenschaft.
  • Anstelle des Bereichs können wir die CELLS-Eigenschaft verwenden.

Interessante Beiträge...