Rückkehr in VBA-Code-Beispiele

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

In diesem Lernprogramm erfahren Sie, wie Sie die Eigenschaft Range.End in VBA verwenden können.

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

Wenn Sie in Excel einen Bereich mit nicht leeren Zellen haben und die Taste Strg+Pfeil nach unten drücken, bewegt sich Ihr Mauszeiger zur letzten nicht leeren Zelle in der Spalte, in der Sie sich befinden. Ähnlich verhält es sich, wenn Sie die Tastenkombination Strg+Pfeil nach oben drücken: Ihr Mauszeiger wird zur ersten nicht leeren Zelle bewegt. Dasselbe gilt für eine Zeile, wenn Sie Strg+Pfeil rechts oder Strg+Pfeil links drücken, um an den Anfang oder das Ende der Zeile zu gelangen. Alle diese Tastenkombinationen können in Ihrem VBA-Code mit der End-Funktion verwendet werden.

Syntax der End-Eigenschaft eines Bereiches

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

ausdruck.End(Richtung)

Der Ausdruck ist die Zellenadresse (Bereich) der Zelle, von der aus Sie beginnen möchten, z. B: Bereich(„A1“)

END ist die Eigenschaft des zu kontrollierenden Range-Objekts.

Die Richtung ist die Excel-Konstante, die Sie verwenden können. Es stehen 4 Möglichkeiten zur Verfügung: xlDown, xlToLeft, xlToRight und xlUp. vba end eigenschaft syntax

Zur letzten Zelle gelangen

Die folgende Prozedur bewegt Sie zur letzten Zelle im aktuellen Bereich der Zellen, in denen Sie sich befinden.

Sub GeheZurLetztenZelle()
'zur letzten belegten Zelle im aktuellen Zellenbereich springen
   Range("A1").End(xlDown).Select
End Sub

Zeilen zählen

Mit der folgenden Prozedur können Sie die Konstante xlDown mit der Eigenschaft Range.End verwenden, um zu zählen, wie viele Zeilen sich in Ihrem aktuellen Bereich befinden.

Sub GehezurLetztenZeileEinesBereichs()
   Dim rw As Integer
   Range("A1").Select
'Die letzte Zeile im aktuellen Bereich ermitteln
   rw = Range("A1").End(xlDown).Row
'Anzeigen, wie viele Zeilen in Verwendung sind
   MsgBox "Die letzte verwendete Zeile in diesem Bereich ist " & rw
End Sub

Das folgende Beispiel zählt die Spalten im Bereich unter Verwendung der Konstante xlToRight.

Sub GehezurLetztenZelleEinesBereichs() 
   Dim spalte As Integer 
   Range("A1").Select 
'Die letzte Spalte im aktuellen Bereich ermitteln
   spalte = Range("A1").End(xlToRight).Column
'anzeigen, wie viele Spalten in Verwendung sind 
   MsgBox "Die letzte verwendete Spalte in diesem Bereich ist " & spalte
 End Sub

Erstellen eines Bereichsarrays

Mit der folgenden Prozedur können wir bei der ersten Zelle in einem Bereich von Zellen beginnen und dann die Eigenschaft End(xlDown) verwenden, um die letzte Zelle in dem Zellebereich zu finden. Wir können dann unser Array mit der Gesamtzahl der Zeilen im Bereich neu dimensionieren (ReDim). Dadurch erhalten wir die Möglichkeit, den Zellenbereich anhand einer Schleife zu durchlaufen.

Sub ArrayFuellen()
'Das Array deklarieren
   Dim strLieferanten() As String
'Die Ganzzahl zum Zählen der Zeilen deklarieren
   Dim n As Integer
'Zählen der Zeilen
   n = Range("B1", Range("B1").End(xlDown)).Rows.Count
'das Array initialisieren und füllen
   ReDim strKunden(n)
'Integer-Variable für die Schleifenbildung deklarieren
   Dim i As Integer
'das Array füllen
   For i = 0 To n
     strKunden(i) = Range("B1").Offset(i, 0).Value
   Next i
'Array-Werte in einer Meldungsbox anzeigen
   MsgBox Join(strKunden, vbCrLf)
End Sub

Wenn wir diese Prozedur ausführen, wird die folgende Meldungsbox angezeigt. vba array end eigenschaft

VBA Coding Made Easy

Stop searching for VBA code online. Learn more about AutoMacro - A VBA Code Builder that allows beginners to code procedures from scratch with minimal coding knowledge and with many time-saving features for all users! vba save as


Learn More!