UsedRange - Letzte verwendete Zelle, Spalte oder Zeile suchen
Der folgende Code gibt ein Meldungsfeld zurück, das die Gesamtzahl der in einem Arbeitsblatt verwendeten Zeilen angibt. Leere Zeilen gelten als verwendet, wenn Daten auf die leere Zeile folgen.
1 | MsgBox ActiveSheet.UsedRange.Rows.Count |
Müssen Sie eine Schleife durch ein Blatt laufen lassen, wissen aber nicht, wo die Daten aufhören? ActiveSheet.UsedRange.Rows.Count könnte helfen.
Füge das in ein Modul ein:
123456789 | Unter LastRow()LastRow als Integer dimmenLastRow = ActiveSheet.UsedRange.Rows.CountMsgBox LastRowEnd Sub |
123456789 | Sub LastCol()Dim LastCol As IntegerLastCol = ActiveSheet.UsedRange.Col.CountMsgBox LastColEnd 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. Es ist keine Schleife erforderlich, 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“.
1234 | Öffentliches Sub AfterLast()ActiveSheet.Range("d" & ActiveSheet.Rows.Count).End(xlUp).Offset(1, 0).Value = "FirstEmpty"End Sub |
Benutzte Spalten im Arbeitsblatt zählen
Der folgende Code gibt in einem Meldungsfeld die Gesamtanzahl der in einem Arbeitsblatt verwendeten Spalten zurück. Leere Spalten gelten als verwendet, wenn Daten auf die leere Spalte folgen.
1 | MsgBox ActiveSheet.UsedRange.Columns.Count |
Zuletzt verwendete Zelle - Probleme
Wenn ich For… Next… Eine ganze Spalte durchlaufen muss Ich verwende normalerweise ActiveSheet.UsedRange.Rows.Count, um herauszufinden, wo ich aufhören soll. Mit dieser Vorgehensweise hatte ich immer viel Glück.
Mir ist auch bewusst, dass Excel gelegentlich denkt, dass die letzte Zeile irgendwo existiert, aber die Zeile ist tatsächlich leer. Ich habe dies ein paar Mal nach dem Importieren von Daten gesehen. Von BeyondTechnology:
Die des Worksheet-Objekts GebrauchtSortiment funktioniert nicht immer, da der verwendete Bereich (oder „schmutzige Bereich“) einer Kalkulationstabelle möglicherweise größer ist als der tatsächlich mit Ihren Datensätzen gefüllte Bereich.