image

Das Finden der nächsten Zeile bedeutet das Finden der zuletzt verwendeten Zeile +1. Das Finden der zuletzt verwendeten Zeile oder Spalte ist eine der grundlegenden und wichtigen Aufgaben für jede Automatisierung in Excel mithilfe von VBA. Zum automatischen Zusammenstellen von Arbeitsblättern, Arbeitsmappen und Anordnen von Daten müssen Sie die Grenze der Daten auf Arbeitsblättern ermitteln.

In diesem Artikel wird jede Methode zum Auffinden der letzten Zeile und Spalte in Excel auf einfachste Weise erläutert.

1. Suchen Sie die letzte nicht leere Zeile in einer Spalte mit Range.End Sehen wir uns zuerst den Code an. Ich werde den Brief erklären.
Sub getLastUsedRow()

Dim last_row As Integer

last_row = Cells(Rows.Count, 1).End(xlUp).Row ‘This line gets the last row

Debug.Print last_row

End Sub

Das obige Sub findet die letzte Zeile in Spalte 1.

image

Wie funktioniert es?

Es ist so, als würden Sie zur letzten Zeile eines Blattes gehen und dann die Tastenkombination STRG + AUF drücken.

Zellen (Rows.Count, 1): Dieser Teil wählt die Zelle in Spalte A aus. Rows.Count gibt 1048576 an, was normalerweise die letzte Zeile im Excel-Blatt ist.

Cells (1048576, 1) .End (xlUp): End ist eine Methode der Bereichsklasse, mit der in Blättern zu Enden navigiert wird. xlUp ist die Variable, die die Richtung angibt. Zusammen wählt dieser Befehl die letzte Zeile mit Daten aus.

Cells (Rows.Count, 1) .End (xlUp) .Row: .row gibt die Zeilennummer der ausgewählten Zelle zurück. Daher erhalten wir die Zeilennummer der letzten Zelle mit Daten in Spalte A. In unserem Beispiel ist es 8.

Sehen Sie, wie einfach es ist, letzte Zeilen mit Daten zu finden. Diese Methode wählt die letzte Zeile in Daten unabhängig von leeren Zellen davor aus. Sie können im Bild sehen, dass nur Zelle A8 Daten enthält. Alle vorhergehenden Zellen außer A4 sind leer.

Wählen Sie die letzte Zelle mit Daten in einer Spalte aus. Wenn Sie die letzte Zelle in einer Spalte auswählen möchten, entfernen Sie einfach „.row“ vom Ende und schreiben Sie .select.
Sub getLastUsedRow()

Cells(Rows.Count, 1).End(xlUp).Select ‘This line selects the last cell in a column

End Sub

Der Befehl „.Select“ wählt die aktive Zelle aus.

Adressspalte der letzten Zelle abrufen Wenn Sie die Adresse der letzten Zelle in der Spalte A abrufen möchten, entfernen Sie einfach „.row“ vom Ende und schreiben Sie .address.
Sub getLastUsedRow()

add=Cells(Rows.Count, 1).End(xlUp).address ‘This line selects the last cell in a column

Debug.print add

End Sub

Die Range.Address-Funktion gibt die Adresse der aktiven Zelle zurück.

Letzte nicht leere Spalte in einer Zeile suchen Es ist fast dasselbe wie die letzte nicht leere Zelle in einer Spalte zu finden.

Hier erhalten wir die Spaltennummer der letzten Zelle mit Daten in Zeile 4.

Sub getLastUsedCol()

Dim last_col As Integer

last_col = Cells(4,Columns.Count).End(xlToLeft).Column ‘This line gets the last column

Debug.Print last_col

End Sub

image

In der Abbildung sehen Sie, dass die Spaltennummer der letzten nicht leeren Zelle in Zeile 4 zurückgegeben wird. Dies ist 4.

Wie funktioniert es?

Die Mechanik entspricht der Suche nach der letzten Zelle mit Daten in einer Spalte. Wir haben nur Schlüsselwörter verwendet, die sich auf Spalten beziehen.

Datensatz in Excel mit VBA auswählen Jetzt wissen wir, wie Sie mit VBA die letzte Zeile und die letzte Spalte von Excel abrufen.

Damit können wir einfach eine Tabelle oder einen Datensatz auswählen. Nachdem Sie einen Datensatz oder eine Tabelle ausgewählt haben, können Sie verschiedene Vorgänge ausführen, z. B. Kopieren, Einfügen, Formatieren, Löschen usw.

Hier haben wir einen Datensatz. Diese Daten können sich nach unten ausdehnen. Nur die Startzelle ist fest, nämlich B4. Die letzte Zeile und Spalte ist nicht festgelegt. Wir müssen die gesamte Tabelle dynamisch mit vba auswählen.

image

VBA-Code zur Auswahl einer Tabelle mit leeren Zellen

Sub select_table()

Dim last_row, last_col As Long

'Get last row

last_row = Cells(Rows.Count, 2).End(xlUp).Row

'Get last column

last_col = Cells(4, Columns.Count).End(xlToLeft).Column

'Select entire table

Range(Cells(4, 2), Cells(last_row, last_col)).Select

End Sub

Wenn Sie dies ausführen, wird die gesamte Tabelle in Sekundenbruchteilen ausgewählt. Sie können neue Zeilen und Spalten hinzufügen. Es werden immer die gesamten Daten ausgewählt.

image

Vorteile dieser Methode:

  1. Es ist einfach. Wir haben buchstäblich nur eine Zeile geschrieben, um die letzte Zeile mit Daten zu erhalten. Das macht es einfach.

  2. Schnell. Weniger Codezeile, weniger Zeitaufwand.

  3. Einfach zu verstehen.

  4. Funktioniert perfekt, wenn Sie eine ungeschickte Datentabelle mit festen Startpunkten haben.

Nachteile der Range.End-Methode:

  1. Der Ausgangspunkt muss bekannt sein.

  2. Sie können nur die letzte nicht leere Zelle in einer bekannten Zeile oder Spalte abrufen.

Wenn Ihr Startpunkt nicht festgelegt ist, ist er unbrauchbar. Was sehr viel weniger wahrscheinlich ist.

2. Letzte Zeile mit der Funktion Find () suchen Lassen Sie uns zuerst den Code sehen.
Sub last_row()

lastRow = ActiveSheet.Cells.Find("*", searchorder:=xlByRows, searchdirection:=xlPrevious).Row



Debug.Print lastRow

End Sub

image

Wie Sie im Bild sehen können, gibt dieser Code die letzte Zeile genau zurück.

Wie funktioniert es? Hier verwenden wir die Suchfunktion, um mit dem Platzhalteroperator „*“ eine Zelle zu finden, die etwas enthält. Das Sternchen wird verwendet, um alles, Text oder Zahlen zu finden.

Wir setzen die Suchreihenfolge nach Zeilen (Suchreihenfolge: = xlByRows). Wir teilen excel vba auch die Suchrichtung als xlPrevious mit (searchdirection: = xlPrevious).

Es macht eine Suchfunktion, um vom Ende des Blattes zeilenweise zu suchen.

Sobald es eine Zelle findet, die etwas enthält, stoppt es. Wir verwenden die Range.Row-Methode, um die letzte Zeile aus der aktiven Zelle abzurufen.

Vorteile der Suchfunktion zum Abrufen der letzten Zelle mit Daten:

  1. Sie müssen den Ausgangspunkt nicht kennen. Es bringt dich nur in die letzte Reihe.

  2. Es kann generisch sein und verwendet werden, um die letzte Zelle mit Daten in einem beliebigen Blatt ohne Änderungen zu finden.

  3. Kann verwendet werden, um eine letzte Instanz eines bestimmten Textes oder einer bestimmten Nummer auf dem Blatt zu finden.

Nachteile der Funktion Find ():

  1. Es ist hässlich. Zu viele Argumente.

  2. Es ist langsam.

  3. Kann nicht zur letzten nicht leeren Spalte gelangen. Technisch können Sie. Aber es wird zu langsam.

3. Verwenden der SpecialCells-Funktion zum Abrufen der letzten Zeile Die SpecialCells-Funktion mit dem Argument xlCellTypeLastCell gibt die zuletzt verwendete Zelle zurück. Sehen wir uns zuerst den Code an

Sub spl_last_row_()

lastRow = ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Row

Debug.Print lastRow

End Sub

image

Wenn Sie den obigen Code ausführen, erhalten Sie die Zeilennummer der zuletzt verwendeten Zelle.

Wie funktioniert es?

Dies ist das vba-Äquivalent der Tastenkombination STRG + Ende in Excel. Es wählt die zuletzt verwendete Zelle aus. Wenn Sie das Makro aufzeichnen, während Sie STRG + Ende drücken, erhalten Sie diesen Code.

Sub Macro1()

'

' Macro1 Macro

'

'

ActiveCell.SpecialCells(xlLastCell).Select

End Sub

Wir haben es nur verwendet, um die Zeilennummer der zuletzt verwendeten Zelle zu erhalten.

Hinweis: Wie oben erwähnt, gibt diese Methode die zuletzt verwendete Zelle und nicht die letzte Zelle mit Daten zurück. Wenn Sie die Daten in der letzten Zelle löschen, gibt der obige VBA-Code immer noch dieselbe Zellreferenz zurück, da es sich um die „zuletzt verwendete Zelle“ handelt. Sie müssen das Dokument zuerst speichern, um mit dieser Methode die letzte Zelle mit Daten zu erhalten.

Hoffe, dieser Artikel über das Finden der nächsten Zeile in VBA Microsoft Excel 2010 ist erklärend. Weitere Artikel zu IF-Bedingungsformeln finden Sie hier.

Wenn Ihnen unsere Blogs gefallen haben, teilen Sie sie mit Ihren Freunden auf Facebook. Und Sie können uns auch auf Twitter und Facebook folgen. Wir würden gerne von Ihnen hören, uns mitteilen, wie wir unsere Arbeit verbessern, ergänzen oder innovieren und für Sie verbessern können. Schreiben Sie uns unter [email protected].

Verwandte Artikel:

link: / application-word-Outlook-in-vba-Erste Schritte mit Excel-VBA-Benutzerformularen [Erste Schritte mit Excel VBA-Benutzerformaten]: Ich werde erklären, wie ein Formular in Excel erstellt wird und wie VBA verwendet wird Toolbox, wie man Benutzereingaben behandelt und schließlich die Benutzereingaben speichert. Wir werden diese Themen anhand eines Beispiels und einer Schritt-für-Schritt-Anleitung durchgehen.

link: / allgemeine-themen-in-vba-vba-variablen-in-excel [VBA-Variablen in Excel]: VBA steht für Visual Basic für Applikationen.

Es ist eine Programmiersprache von Microsoft. Es wird mit Microsoft Office-Anwendungen wie MSExcel, MS-Word und MS-Access verwendet, während VBA-Variablen bestimmte Schlüsselwörter sind.

link: / allgemeine-themen-in-vba-excel-vba-variablenbereich [Excel VBA-Variablenbereich]: In allen Programmiersprachen haben wir Variablenzugriffsspezifizierer, die definieren, von wo aus auf eine definierte Variable zugegriffen werden kann. Excel VBA ist keine Ausnahme. Auch VBA verfügt über Bereichsspezifizierer.

link: / Zellenbereiche-Zeilen-und-Spalten-in-vba-was-ist-der-Unterschied-zwischen-byref-und-byval-Argumenten-vba-Interview-Frage [ByRef- und ByVal-Argumente]: Wann Ein Argument wird als ByRef-Argument an ein anderes Sub oder eine andere Funktion übergeben. Die Referenz der tatsächlichen Variablen wird gesendet. Alle Änderungen, die an der Kopie der Variablen vorgenommen werden, werden im ursprünglichen Argument wiedergegeben.

Beliebte Artikel:

link: / tips-if-condition-in-excel [Verwendung der IF-Funktion in Excel]: Die IF-Anweisung in Excel überprüft die Bedingung und gibt einen bestimmten Wert zurück, wenn die Bedingung TRUE ist, oder gibt einen anderen bestimmten Wert zurück, wenn FALSE .

link: / formeln-und-funktionen-einführung-der-vlookup-funktion [Verwendung der VLOOKUP-Funktion in Excel]: Dies ist eine der am häufigsten verwendeten und beliebtesten Funktionen von Excel, die zum Nachschlagen von Werten aus verschiedenen Bereichen verwendet wird und Blätter.

link: / excel-formel-und-funktion-excel-sumif-funktion [Verwendung der SUMIF-Funktion in Excel]: Dies ist eine weitere wichtige Dashboard-Funktion. Auf diese Weise können Sie Werte unter bestimmten Bedingungen zusammenfassen.

link: / tips-countif-in-microsoft-excel [Verwendung der COUNTIF-Funktion in Excel]: Zählen Sie Werte mit Bedingungen, die diese erstaunliche Funktion verwenden. Sie müssen Ihre Daten nicht filtern, um bestimmte Werte zu zählen. Die Countif-Funktion ist wichtig, um Ihr Dashboard vorzubereiten.