Satura rādītājs
VBA varat izmantot dažādas metodes, lai atrastu pēdējo rindu. Šajā rakstā es gatavojos izskaidrot dažādas VBA metodes atrast pēdējo rindu programmā Excel.
Lai padarītu šo skaidrojumu uzskatāmu, es izmantošu datu kopas paraugu. Datu kopā ir 4 slejas, kas atspoguļo pārdošanas informāciju. Šīs slejas ir šādas. Pārdevējs, reģions, produkts, un Cena .
Lejupielādēt Lai praktizētu
VBA Atrast pēdējo rindu.xlsmVeidi, kā VBA programmā Excel atrast pēdējo rindu
1. Izmantojot SpecialCells, lai atrastu pēdējo rindu
Varat izmantot SpecialCells metode, lai atrastu pēdējo rindu, izmantojot VBA .
Vispirms atveriet Izstrādātājs cilne>> pēc tam atlasiet Visual Basic
Jauns logs Microsoft Visual Basic lietojumprogrammām parādīsies.
Tagad no Ievietot >> atlasīt Modulis
A Modulis tiks atvērts.
Pēc tam ierakstiet šādu kodu Modulis .
Sub LastRow_SpecialCells() Dim LastRow As Long LastRow = Range("A:A").SpecialCells(xlCellTypeLastCell).Row MsgBox LastRow End Sub
Šeit esmu izveidojis apakšprocedūru ar nosaukumu LastRow_SpecialCells , kur a Long mainīgā lieluma veids LastRow ir deklarēts.
Pēc tam definējiet mainīgo, izmantojot Range.SpecialCells metodi. Šeit es izmantoju kolonnu A ( A:A ) kā diapazonu. xlCellTypeLastCell kā tipa parametru SpecialCells , tiks atgriezta pēdējā diapazona šūna (šajā gadījumā no kolonnas A ).
Esmu izmantojis ziņojumu lodziņu, lai parādītu rezultātu.
Pēc tam, Saglabāt kodu un atgriezieties darblapā.
Atkal atveriet Skatīt cilne>> no Makroprocesori >> atlasīt Apskatīt makrouzdevumus
Tad a dialoglodziņš parādīsies.
Tagad no Makro nosaukums atlasiet LastRow_SpecialCells atlasiet arī darbgrāmatu Makro .
Visbeidzot, Palaist izvēlēto Makro .
Tādējādi tiks parādīts ziņojuma logs, kurā būs redzams pēdējās rindas numurs.
2. Rows.Count izmantošana šūnām, kas nav tukšas
Varat izmantot Rows.Count metode, lai atrastu pēdējo rindu, izmantojot VBA .
Tagad atveriet Izstrādātājs cilne>> pēc tam atlasiet Visual Basic
Jauns logs Microsoft Visual Basic lietojumprogrammām parādīsies.
Tagad no Ievietot >> atlasīt Modulis
A Modulis tiks atvērts.
Pēc tam ierakstiet šādu kodu Modulis .
Sub LastRow_NonEmpty() Dim LastRow As Long LastRow = Cells(Rows.Count, 1).End(xlUp).Row MsgBox LastRow End Sub
Šeit esmu izveidojis apakšprocedūru ar nosaukumu LastRow_NonEmpty, kurā a Long mainīgā lieluma veids LastRow ir deklarēts.
Tagad, CELLS(Rows.Count, 1) saskaitīs, cik daudz rindu ir pirmajā slejā. Pēc tam izmanto End(xlUp).Row tagad tas atradīs pēdējo izmantoto rindu Excel diapazonā.
Beigās izmantoju ziņojumu lodziņu, lai parādītu rezultātu.
Tad, Saglabāt kodu un atgriezieties darblapā.
Šeit atveriet Skatīt cilne>> no Makroprocesori >> atlasīt Apskatīt makrouzdevumus
Tagad dialoglodziņš parādīsies.
Tad no Makro nosaukums atlasiet LastRow_NonEmpty atlasiet arī darbgrāmatu Makro .
Visbeidzot, Palaist izvēlēto Makro .
Tādējādi tiks parādīts ziņojuma logs, kurā būs redzams pēdējās rindas numurs.
3. Rows.Count izmantošana jebkurai atlasītajai kolonnai
Izmantojot jebkuru atlasīto kolonnu VBA, var atrast pēdējo rindu.
Vispirms atveriet Izstrādātājs cilne>> pēc tam atlasiet Visual Basic
Jauns logs Microsoft Visual Basic lietojumprogrammām parādīsies.
Tagad no Ievietot >> atlasīt Modulis
A Modulis tiks atvērts.
Pēc tam ierakstiet šādu kodu Modulis .
Sub LastRow_AnyColumn() Dim LastRow As Long LastRow = Range("B" & amp; Rows.Count).End(xlUp).Row MsgBox LastRow End Sub
Šeit esmu izveidojis apakšprocedūru ar nosaukumu LastRow_AnyColumn, kurā a Long mainīgā lieluma veids LastRow ir deklarēts.
Pēc tam Diapazons ņemot vērā kolonnu B kā parametru un arī Rows.Count , tas saskaitīs, cik rindu ir attiecīgajā slejā. B . Nākamais, lietots End(xlup). rinda kas atrod pēdējo izmantoto rindu Excel diapazonā.
Visbeidzot, lai parādītu rezultātu, esmu izmantojis ziņojumu lodziņu.
Nākamais, Saglabāt kodu un atgriezieties darblapā.
Pēc tam atveriet Skatīt cilne>> no Makroprocesori >> atlasīt Apskatīt makrouzdevumus
Šajā gadījumā a dialoglodziņš parādīsies.
Tagad no Makro nosaukums atlasiet LastRow_AnyColumn atlasiet arī darbgrāmatu Makro .
Visbeidzot, Palaist izvēlēto Makro .
Tādējādi tiks parādīts ziņojuma logs, kurā būs redzams pēdējās rindas numurs.
Līdzīgi lasījumi:
- VBA Atrast kolonnā programmā Excel (7 pieejas)
- Atrast un aizstāt, izmantojot VBA (11 veidi)
- Precīza atbilstības atrašana, izmantojot VBA programmā Excel (5 veidi)
- Kā atrast virkni ar VBA programmā Excel (8 piemēri)
4. UsedRange izmantošana, lai atrastu pēdējo rindu
Varat izmantot UsedRange darblapas īpašību, lai atrastu pēdējo rindu, izmantojot VBA .
Tagad atveriet Izstrādātājs cilne>> pēc tam atlasiet Visual Basic
Pēc tam tiek atvērts jauns logs Microsoft Visual Basic lietojumprogrammām parādīsies.
Tagad no Ievietot >> atlasīt Modulis
A Modulis tiks atvērts.
Pēc tam ierakstiet šādu kodu Modulis .
Sub LastRow_UsedRange() Dim LastRow As Long LastRow = ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row MsgBox "Last Row: " & amp; LastRow End Sub
Šeit esmu izveidojis apakšprocedūru ar nosaukumu LastRow_UsedRange, kurā a Long mainīgā lieluma veids LastRow ir deklarēts.
Tālāk definējiet mainīgo, izmantojot ActiveSheet.UsedRange.Rows metode arī nodrošināja ActiveSheet.UsedRange.Rows.Count kā parametru ActiveSheet.UsedRange.Rows tiks atgriezta pēdējā rinda.
Esmu izmantojis ziņojumu lodziņu, lai parādītu rezultātu.
Tagad, Saglabāt kodu un atgriezieties darblapā.
Pēc tam atveriet Skatīt cilne>> no Makroprocesori >> atlasīt Apskatīt makrouzdevumus
Tālāk, a dialoglodziņš parādīsies.
Tad no Makro nosaukums atlasiet LastRow_UsedRange atlasiet arī darbgrāmatu Makro .
Visbeidzot, Palaist izvēlēto Makro .
Tādējādi tiks parādīts ziņojuma logs, kurā būs redzams pēdējās rindas numurs.
5. Izmantojot Range.Find, lai atrastu pēdējo rindu
Varat izmantot Range.Find metode, lai atrastu pēdējo rindu, izmantojot VBA .
Tagad atveriet Izstrādātājs cilne>> pēc tam atlasiet Visual Basic
Šeit tiek atvērts jauns logs Microsoft Visual Basic lietojumprogrammām parādīsies.
Tagad no Ievietot >> atlasīt Modulis
A Modulis tiks atvērts.
Pēc tam ierakstiet šādu kodu Modulis .
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: " & amp; LastRow End Sub
Šeit esmu izveidojis apakšprocedūru ar nosaukumu Range_Find_Method, kurā a Long mainīgā lieluma veids LastRow ir deklarēts.
Pēc tam definējiet mainīgo, izmantojot Cells.Find metode. Šeit deklarēti 7 parametri. Ko Parametrs, ko es izmantoju ("*"), atradīs pirmo nepilno šūnu. A1 kā diapazonu Pēc parametrs, lai sāktu. LookAt sniegtais parametrs xldaļa lai apskatītu jebkuru šūnas iekšienē esošā teksta daļu.
LookIn:=xlFormulas parametrs meklēs formulas, ja tādas ir. SearchOrder:=xlByRows parametrs pārvietosies no labās puses uz kreiso un arī cilpas augšup pa katru rindu, līdz atrod tukšu šūnu.
MatchCase:=False parametrs norādīs Atrast neņemt vērā lielos vai mazos burtus. Kad tiek atrasts burts, kas nav tukšraksts, tas apstājas un atdod rindas numuru.
Esmu izmantojis ziņojumu lodziņu, lai parādītu rezultātu.
Tagad, Saglabāt kodu un atgriezieties darblapā.
Šeit atveriet Skatīt cilne>> no Makroprocesori >> atlasīt Apskatīt makrouzdevumus
Tagad dialoglodziņš parādīsies.
Tagad no Makro nosaukums atlasiet Range_Find_Method atlasiet arī darblapu Makro .
Visbeidzot, Palaist izvēlēto Makro .
Tādējādi tiks parādīts ziņojuma logs, kurā būs redzams pēdējās rindas numurs.
Secinājums
Šajā rakstā esmu izskaidrojis 5 veidus, kā VBA atrast pēdējo rindu programmā Excel. Lai atrastu pēdējo rindu, varat izmantot jebkuru no metodēm. Ja jums ir neskaidrības vai jautājumi par šīm metodēm, varat komentēt tālāk tekstā.