VBA Range.End (xlDown, xlUp, xlToRight, xlToLeft)

In diesem Tutorial erfahren Sie, wie Sie die Range.End-Eigenschaft in VBA verwenden.

Die meisten Dinge, die Sie manuell in einer Excel-Arbeitsmappe oder einem Excel-Arbeitsblatt ausführen, können in VBA-Code automatisiert werden.

Wenn Sie in Excel einen Bereich nicht leerer Zellen haben und drücken Strg+Pfeil nach unten, bewegt sich Ihr Cursor zur letzten nicht leeren Zelle in der Spalte, in der Sie sich befinden. Wenn Sie drücken, Strg+Pfeil nach oben, bewegt sich Ihr Cursor in die erste nicht leere Zelle. Das gleiche gilt für eine Zeile mit der Strg+Pfeil nach rechts oder Strg+Linkspfeil um zum Anfang oder Ende dieser Zeile zu gehen. Alle diese Tastenkombinationen können in Ihrem VBA-Code mit dem verwendet werden Endfunktion.

Syntax der Bereichsende-Eigenschaft

Mit der Range.End-Eigenschaft können Sie zu einer bestimmten Zelle innerhalb der aktuellen Region wechseln, mit der Sie arbeiten.

Ausdruck.Ende (Richtung)

der Ausdruck ist die Zelladresse (Range) der Zelle, von der aus Sie beginnen möchten, zB: Range(“A1”)

END ist die Eigenschaft des gesteuerten Range-Objekts.

Direction ist die Excel-Konstante, die Sie verwenden können. Es stehen 4 Auswahlmöglichkeiten zur Verfügung - xlDown, xlToLeft, xlToRight und xlUp.

Zur letzten Zelle wechseln

Das folgende Verfahren führt Sie zur letzten Zelle in der aktuellen Region der Zellen, in der Sie sich befinden.

1234 Unter GoToLast()'zur letzten besetzten Zelle im aktuellen Zellenbereich gehenRange("A1").End(xlDown).SelectEnd Sub

Reihen zählen

Mit dem folgenden Verfahren können Sie die xlDown -Konstante mit der Range End-Eigenschaft, um zu zählen, wie viele Zeilen sich in Ihrer aktuellen Region befinden.

12345678 Unter GoToLastRowofRange()Dim rw As IntegerBereich("A1").Wählen'die letzte Zeile in der aktuellen Region abrufenrw = Range("A1").End(xlDown).Row'zeigen, wie viele Zeilen verwendet werdenMsgBox "Die letzte in diesem Bereich verwendete Zeile ist " & rwEnd Sub

Während der folgende die Spalten im Bereich mit dem zählt xlToRight Konstante.

12345678 Unter GoToLastCellofRange()Dim col As IntegerBereich("A1").Wählen'die letzte Spalte in der aktuellen Region abrufencol = Range("A1").End(xlToRight).Column'zeigen, wie viele Spalten verwendet werdenMsgBox "Die letzte in diesem Bereich verwendete Spalte ist " & colEnd Sub

Erstellen eines Range-Arrays

Das folgende Verfahren ermöglicht es uns, mit der ersten Zelle in einem Zellbereich zu beginnen und dann die End(xlDown)-Eigenschaft zu verwenden, um die letzte Zelle im Zellbereich zu finden. Wir können dann unser Array mit der Gesamtzahl der Zeilen im Bereich reDimieren, wodurch wir den Zellenbereich durchlaufen können.

123456789101112131415161718 Unter PopulateArray()'das Array deklarierenDim strSuppliers() As String'deklarieren Sie die ganze Zahl, um die Zeilen zu zählenDim n As Integer'zähle die Reihenn = Range("B1", Range("B1").End(xlDown)).Rows.Count'Array initialisieren und auffüllenReDim strKunden(n)'Ganzzahl für Schleife deklarierenDim i As Integer'das Array auffüllenFür i = 0 bis nstrCustomers(i) = Range("B1").Offset(i, 0).WertAls nächstes'Meldungsbox mit Array-Werten anzeigenMsgBox Join(strCustomers, vbCrLf)End Sub

Wenn wir dieses Verfahren ausführen, wird das folgende Meldungsfeld zurückgegeben.

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave