Rückkehr in VBA-Code-Beispiele

VBA UsedRange – Bestimmen der Anzahl der verwendeten Zeilen oder Spalten

UsedRange – Suche nach der zuletzt verwendeten Zelle, Spalte oder Zeile

Der folgende Code gibt eine Meldungsbox zurück, die die Gesamtzahl der verwendeten Zeilen in einem Arbeitsblatt angibt. Leere Zeilen gelten als verwendet, wenn Daten auf die leere Zeile folgen.

MsgBox ActiveSheet.UsedRange.Rows.Count

Müssen Sie eine Schleife über ein Blatt laufen lassen, wissen aber nicht, wo die Daten aufhören? ActiveSheet.UsedRange.Rows.Count könnte Ihnen helfen.

Fügen Sie dies in ein Modul ein:

Sub Letzte_Zeile()

Dim LetzteZeile As Integer

LetzteZeile = ActiveSheet.UsedRange.Rows.Count

MsgBox LetzteZeile

End Sub
Sub Letzte_Spalte()

Dim LetzteSpalte As Integer

LetzteSpalte = ActiveSheet.UsedRange.Columns.Count

MsgBox LetzteSpalte

End Sub

Erste leere Zelle finden

Mit VBA müssen Sie möglicherweise in die erste leere Zelle oder nach der letzten in einer Spalte verwendeten Zeile schreiben. Sie brauchen keine Schleife zu nutzen, um dies zu finden. Der folgende Code erledigt dies für Sie.

In diesem Beispiel schreibt der Code „FirstEmpty“ in die erste leere Zelle in Spalte „d“

Public Sub AfterLast()

ActiveSheet.Range("d" & ActiveSheet.Rows.Count).End(xlUp).Offset(1, 0).Value = "FirstEmpty"
End Sub

Verwendete Spalten im Arbeitsblatt zählen

Der folgende Code gibt in einer Meldungsbox die Gesamtzahl der in einem Arbeitsblatt verwendeten Spalten zurück. Leere Spalten gelten als verwendet, wenn Daten auf die leere Spalte folgen.

MsgBox ActiveSheet.UsedRange.Columns.Count

Letzte verwendete Zelle – Probleme

Wenn ich eine „For-Next-Schleife durch eine ganze Spalte brauche, verwende ich normalerweise ActiveSheet.UsedRange.Rows.Count, um herauszufinden, wo ich aufhören soll. Ich hatte immer viel Glück mit diesem Ansatz.

Ich weiß auch, dass Excel gelegentlich denkt, dass die letzte Zeile irgendwo existiert, aber die Zeile ist tatsächlich leer. Das ist mir nach dem Importieren von Daten schon ein paar Mal passiert. Von BeyondTechnology:

Die Funktion UsedRange des Worksheet-Objekts funktioniert nicht immer, da der verwendete Bereich (oder „schmutzige Bereich“) eines Arbeitsblatts größer sein kann als der Bereich, der tatsächlich mit Ihren Datensätzen gefüllt ist.

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!