VBA Znajdź ostatni wiersz w Excelu (5 sposobów)

  • Udostępnij To
Hugh West

W VBA można użyć różnych metod, aby znaleźć ostatni wiersz. W tym artykule zamierzam wyjaśnić różne metody VBA znaleźć ostatni wiersz w programie Excel.

Aby zobrazować to wyjaśnienie posłużę się przykładowym zbiorem danych.W zbiorze danych znajdują się 4 kolumny reprezentujące informacje o sprzedaży.Kolumny te to. Sprzedawca, Region, Produkt, oraz Cena .

Pobierz do ćwiczeń

VBA Znajdź ostatni wiersz.xlsm

Sposoby VBA na znalezienie ostatniego wiersza w Excelu

1. użycie SpecialCells do znalezienia ostatniego wiersza

Możesz użyć SpecialCells aby znaleźć ostatni wiersz za pomocą metody VBA .

Najpierw należy otworzyć Deweloper tab>> następnie wybierz Visual Basic

Nowe okno Microsoft Visual Basic for Applications pojawi się.

Teraz, od Wkładka >> wybierz Moduł

A Moduł zostanie otwarty.

Następnie napisz następujący kod w Moduł .

 Sub LastRow_SpecialCells() Dim LastRow As Long LastRow = Range("A:A").SpecialCells(xlCellTypeLastCell).Row MsgBox LastRow End Sub 

Tutaj utworzyłem procedurę podrzędną o nazwie LastRow_SpecialCells , gdzie a Długi rodzaj zmiennej LastRow oświadczył.

Następnie zdefiniowaliśmy zmienną za pomocą Range.SpecialCells Tutaj użyłem kolumny A ( A:A ) jako zakres. zapewniony xlCellTypeLastCell jako parametr typu dla SpecialCells to zwróci ostatnią komórkę z zakresu (w tym przypadku z kolumny A ).

Użyłem skrzynki wiadomości, aby pokazać wynik.

Po tym, Zapisz kod i wróć do arkusza.

Ponownie otwórz Zobacz tab>> od Makra >> wybierz Wyświetlanie makr

Następnie, a okno dialogowe pojawi się.

Teraz, z Nazwa makra wybrać LastRow_SpecialCells wybrać również skoroszyt w ramach Makra w .

Wreszcie, Uruchom wybrany Makro .

W ten sposób wyskoczy okno komunikatu pokazujące ostatni numer wiersza.

2. użycie Rows.Count dla niepustych komórek

Możesz użyć Rows.Count aby znaleźć ostatni wiersz za pomocą metody VBA .

Teraz otwórz Deweloper tab>> następnie wybierz Visual Basic

Nowe okno Microsoft Visual Basic for Applications pojawi się.

Teraz, od Wkładka >> wybierz Moduł

A Moduł zostanie otwarty.

Następnie napisz następujący kod w Moduł .

 Sub LastRow_NonEmpty() Dim LastRow As Long LastRow = Cells(Rows.Count, 1).End(xlUp).Row MsgBox LastRow End Sub 

Tutaj stworzyłem podprocedurę o nazwie LastRow_NonEmpty, gdzie a Długi rodzaj zmiennej LastRow oświadczył.

Teraz, CELLS(Rows.Count, 1) policzy ile jest wierszy w pierwszej kolumnie. Następnie użyjemy End(xlUp).Row teraz to znajdzie ostatnio używany wiersz w zakresie Excela.

Na koniec użyłem skrzynki wiadomości, aby pokazać wynik.

Następnie, Zapisz kod i wróć do arkusza.

W tym miejscu należy otworzyć Zobacz tab>> od Makra >> wybierz Wyświetlanie makr

Teraz, a okno dialogowe pojawi się.

Następnie, z Nazwa makra wybrać LastRow_NonEmpty wybrać również skoroszyt w ramach Makra w .

Wreszcie, Uruchom wybrany Makro .

W ten sposób wyskoczy okno komunikatu pokazujące ostatni numer wiersza.

3. użycie Rows.Count dla dowolnej wybranej kolumny

Używając dowolnej wybranej kolumny w VBA, można znaleźć ostatni rząd.

Najpierw należy otworzyć Deweloper tab>> następnie wybierz Visual Basic

Nowe okno Microsoft Visual Basic for Applications pojawi się.

Teraz, od Wkładka >> wybierz Moduł

A Moduł zostanie otwarty.

Następnie napisz następujący kod w Moduł .

 Sub LastRow_AnyColumn() Dim LastRow As Long LastRow = Range("B" & Rows.Count).End(xlUp).Row MsgBox LastRow End Sub. 

Tutaj stworzyłem procedurę podrzędną o nazwie LastRow_AnyColumn, gdzie a Długi rodzaj zmiennej LastRow oświadczył.

Następnie, w Zakres biorąc pod uwagę kolumnę B jako parametr, a także Rows.Count to policzy ile jest wierszy w danej kolumnie B . Dalej, używany End(xlup).Wiersz Który znajdzie ostatnio używany wiersz w zakresie Excela.

Na koniec użyłem okienka z komunikatem, aby pokazać wynik.

Następny, Zapisz kod i wróć do arkusza.

Następnie należy otworzyć Zobacz tab>> od Makra >> wybierz Wyświetlanie makr

Tutaj, a okno dialogowe pojawi się.

Teraz, z Nazwa makra wybrać LastRow_AnyColumn wybrać również skoroszyt w ramach Makra w .

Wreszcie, Uruchom wybrany Makro .

W ten sposób wyskoczy okno komunikatu pokazujące ostatni numer wiersza.

Podobne Lektury:

  • VBA Znajdź w kolumnie w Excelu (7 podejść)
  • Znajdź i zamień za pomocą VBA (11 sposobów)
  • Znajdź Dokładne dopasowanie za pomocą VBA w Excelu (5 sposobów)
  • Jak znaleźć ciąg z VBA w Excelu (8 przykładów)

4. użycie UsedRange do znalezienia ostatniego wiersza

Możesz użyć UżywaneRange właściwości arkusza, aby znaleźć ostatni wiersz za pomocą VBA .

Teraz otwórz Deweloper tab>> następnie wybierz Visual Basic

Następnie, w nowym oknie Microsoft Visual Basic for Applications pojawi się.

Teraz, od Wkładka >> wybierz Moduł

A Moduł zostanie otwarty.

Następnie napisz następujący kod w Moduł .

 Sub LastRow_UsedRange() Dim LastRow As Long LastRow = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row MsgBox "Ostatni wiersz: " & LastRow End Sub 

Tutaj stworzyłem podprocedurę o nazwie LastRow_UsedRange, gdzie a Długi rodzaj zmiennej LastRow oświadczył.

Następnie definiujemy zmienną za pomocą ActiveSheet.UsedRange.Rows podano również metodę ActiveSheet.UsedRange.Rows.Count jako parametr ActiveSheet.UsedRange.Rows , to zwróci ostatni wiersz.

Użyłem skrzynki wiadomości, aby pokazać wynik.

Teraz, Zapisz kod i wróć do arkusza.

Następnie należy otworzyć Zobacz tab>> od Makra >> wybierz Wyświetlanie makr

Następnie, a okno dialogowe pojawi się.

Następnie, z Nazwa makra wybrać LastRow_UsedRange wybrać również skoroszyt w ramach Makra w .

Wreszcie, Uruchom wybrany Makro .

W ten sposób wyskoczy okno komunikatu pokazujące ostatni numer wiersza.

5. użycie funkcji Range.Find do znalezienia ostatniego wiersza

Możesz użyć Range.Find aby znaleźć ostatni rząd używając metody VBA .

Teraz otwórz Deweloper tab>> następnie wybierz Visual Basic

Tutaj pojawi się nowe okno Microsoft Visual Basic for Applications pojawi się.

Teraz, od Wkładka >> wybierz Moduł

A Moduł zostanie otwarty.

Następnie napisz następujący kod w Moduł .

 Sub Range_Find_Method() Dim LastRow As Long On Error Resume Next LastRow = Cells.Find(What:="*", _ After:=Range("A1"), _ LookAt:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Row On Error GoTo 0 MsgBox "Last Row: " & LastRow End Sub 

Tutaj utworzyłem podprocedurę o nazwie Range_Find_Method, gdzie a Długi rodzaj zmiennej LastRow oświadczył.

Następnie zdefiniowaliśmy zmienną za pomocą Cells.Find tutaj zadeklarowano 7 parametrów. w Co parametr użyłem ("*"), który znajdzie pierwszą niepustą komórkę.Podane A1 jako zakres w Po aby rozpocząć. W Zajrzyj na stronę dostarczony parametr xlPart aby spojrzeć na dowolną część tekstu wewnątrz komórki.

LookIn:=xlFormulas parametr będzie szukał formuł, jeśli takie istnieją. SearchOrder:=xlByRows parametr będzie poruszał się od prawej do lewej strony, a także zapętla się w górę przez każdy wiersz, dopóki nie znajdzie niepustej komórki.

MatchCase:=False parametr powie Znajdź nie uwzględnia dużych i małych liter. Po znalezieniu pustego miejsca zatrzymuje się i zwraca numer wiersza.

Użyłem skrzynki wiadomości, aby pokazać wynik.

Teraz, Zapisz kod i wróć do arkusza.

W tym miejscu należy otworzyć Zobacz tab>> od Makra >> wybierz Wyświetlanie makr

Teraz, a okno dialogowe pojawi się.

Teraz, z Nazwa makra wybrać Range_Find_Method również wybrać arkusz w ramach Makra w .

Wreszcie, Uruchom wybrany Makro .

W ten sposób wyskoczy okno komunikatu pokazujące ostatni numer wiersza.

Wniosek

W tym artykule wyjaśniłem 5 sposobów na. VBA Znajdź ostatni wiersz w programie Excel. Możesz zastosować dowolną z metod, aby znaleźć ostatni wiersz. W przypadku, gdy masz jakieś zamieszanie lub pytanie dotyczące tych metod, możesz skomentować poniżej.

Hugh West jest bardzo doświadczonym trenerem i analitykiem Excela z ponad 10-letnim doświadczeniem w branży. Posiada tytuł licencjata w dziedzinie rachunkowości i finansów oraz tytuł magistra administracji biznesowej. Hugh ma pasję do nauczania i opracował unikalne podejście do nauczania, które jest łatwe do naśladowania i zrozumienia. Jego specjalistyczna wiedza na temat programu Excel pomogła tysiącom studentów i profesjonalistów na całym świecie doskonalić swoje umiejętności i osiągać doskonałe wyniki w karierze. Za pośrednictwem swojego bloga Hugh dzieli się swoją wiedzą ze światem, oferując bezpłatne samouczki programu Excel i szkolenia online, aby pomóc osobom indywidualnym i firmom w pełni wykorzystać swój potencjał.