VBA Fyn lêste rige yn Excel (5 manieren)

  • Diel Dit
Hugh West

Yn de VBA kinne jo ferskate metoaden brûke om de lêste rige te finen. Yn dit artikel sil ik ferskate metoaden fan VBA fine lêste rige yn Excel ferklearje.

Om dizze útlis sichtber te meitsjen, sil ik in sample dataset brûke. D'r binne 4 kolommen yn 'e dataset dy't ferkeapynformaasje fertsjintwurdigje. Dizze kolommen binne Sakepersoan, Regio, Produkt, en Priis .

Download om te oefenjen

VBA Find Last Row.xlsm

Manieren om VBA Find Last Row yn Excel

1. Gebrûk fan SpecialCells om lêste rige te finen

Jo kinne de metoade SpecialCells brûke om de lêste rige te finen mei VBA .

Earst iepenje de ûntwikkelder tab >> selektearje dan Visual Basic

In nij finster fan Microsoft Visual Basic for Applications sil ferskine.

No, fan Foegje >> selektearje Module

In Module sil iepene wurde.

Skriuw dan de folgjende koade yn de Module .

7091

Hjir haw ik in subproseduere makke mei de namme LastRow_SpecialCells , wêrby't in Long type fan fariabele LastRow is ferklearre.

Dan definieare de fariabele mei de metoade Range.SpecialCells . Hjir haw ik kolom A ( A:A ) brûkt as berik. Mits xlCellTypeLastCell as de typeparameter fan SpecialCells , sil dit de lêste sel foar it berik weromjaan (foar dit gefal, fan kolom A ).

Ik haw in berjochtfak brûkt om it resultaat te sjen.

Dêrnei Bewarje de koade en gean werom nei de wurkblêd.

Iepenje nochris de Besjoch ljepper >> fan Makro's >> selektearje Makro's besjen

Dan sil in dialoochfinster opkomme.

Selektearje no út de Makro-namme de LastRow_SpecialCells selektearje ek it wurkboek binnen Makro's yn .

Uteinlik, Run de selektearre Makro .

Sa sil it in berjochtfakje opdûke mei it lêste rigenûmer.

2. Rows.Count brûke foar net-lege sellen

Jo kinne de metoade Rows.Count brûke om de lêste rige te finen mei VBA .

Iepenje no de ljepper ûntwikkelder >> selektearje dan Visual Basic

In nij finster fan Microsoft Visual Basic for Applications sil ferskine.

No, fan Foegje >> selektearje Module

In Module sil iepene wurde.

Skriuw dan de folgjende koade yn de Module .

4799

Hjir haw ik in subproseduere makke mei de namme LastRow_NonEmpty, wêrby't in Long type fariabele LastRow is ferklearre.

No sil CELLS(Rows.Count, 1) telle hoefolle rigen der binne yn de earste kolom. Dan brûkt End(xlUp).Rige no sil dit de lêste brûkte rige fine yn in Excel-berik.

Ut it lêst haw ik in berjochtfak brûkt om deresultaat.

Dan, Bewarje de koade en gean werom nei it wurkblêd.

Iepenje hjir de Besjoch ljepper >> fan Makro's >> selektearje Makro's besjen

No sil in dialoochfinster ferskine.

Selektearje dan fan de Makro-namme de LastRow_NonEmpty selektearje ek it wurkboek binnen Makro's yn .

Uteinlik, Run de selektearre Makro .

Sa sil it in berjochtfakje opdûke mei it lêste rigenûmer.

3. Rows.Count brûke foar elke selektearre kolom

Troch in selektearre kolom te brûken yn VBA, kinne jo de lêste rige fine.

Earst , iepenje de ljepper ûntwikkelder >> selektearje dan Visual Basic

In nij finster fan Microsoft Visual Basic for Applications sil ferskine.

No, fan Foegje >> selektearje Module

In Module sil iepene wurde.

Skriuw dan de folgjende koade yn de Module .

8254

Hjir haw ik in subproseduere makke mei de namme LastRow_AnyColumn, wêrby't in Long type fariabele LastRow is ferklearre.

Dan, yn it berik jûn de kolom B as parameter en ek Rows.Count , dizze sil telle hoefolle rigen der binne yn in opjûne kolom B . Folgjende, brûkt End(xlup). Rige dy't de lêst brûkte rige sil fine yn in Excel-berik.

Last haw ik in berjochtfak brûkt om deresultaat.

Folgjende, Bewarje de koade en gean werom nei it wurkblêd.

Dan iepenje de Besjoch ljepper >> fan Makro's >> selektearje Makro's besjen

Hjir sil in dialoochfinster opkomme.

Selektearje no út de Makro-namme de LastRow_AnyColumn selektearje ek it wurkboek binnen Makro's yn .

Uteinlik, Utfiere de selektearre Makro .

Sa sil it in berjochtfakje opdûke mei it lêste rigenûmer.

Fergelykbere lêzingen:

  • VBA fine yn kolom yn Excel (7 oanpak)
  • Fyn en ferfange mei VBA (11) Manieren)
  • Fyn eksakte oerienkomst mei VBA yn Excel (5 manieren)
  • Hoe kinne jo string fine mei VBA yn Excel (8 foarbylden)

4. UsedRange brûke om lêste rige te finen

Jo kinne de UsedRange eigenskip fan it wurkblêd brûke om de lêste te finen rige mei VBA .

Iepenje no de ljepper ûntwikkelder >> selektearje dan Visual Basic

Dan sil in nij finster fan Microsoft Visual Basic for Applications ferskine.

No, fan Foegje >> selektearje Module

In Module sil iepene wurde.

Skriuw dan de folgjende koade yn de Module .

8843

Hjir haw ik in subproseduere makke mei de namme LastRow_UsedRange, wêrby't in Long type fariabele LastRow is ferklearre.

Folgjende, definieare defariabele mei de ActiveSheet.UsedRange.Rows metoade ek levere ActiveSheet.UsedRange.Rows.Count as de parameter fan ActiveSheet.UsedRange.Rows , dit sil de lêste rige.

Ik haw in berjochtfak brûkt om it resultaat te sjen.

No, Bewarje de koade en gean werom nei it wurkblêd.

Dan iepenje de Besjoch ljepper >> fan Makro's >> selektearje Makro's besjen

Dêrnei sil in dialoochfinster opkomme.

Dan, út de Makro namme selektearje de LastRow_UsedRange selektearje ek it wurkboek binnen Makro's yn .

Uteinlik Run de selektearre Makro .

Sa sil it in berjochtfakje ferskine mei it lêste rigenûmer.

5. Range.Find brûke om lêste te finen. Rige

Jo kinne de metoade Range.Find brûke om de lêste rige te finen mei VBA .

Iepenje no de Utwikkelder tab >> selektearje dan Visual Basic

Hjir sil in nij finster fan Microsoft Visual Basic for Applications ferskine.

No, fan Foegje >> selektearje Module

In Module sil iepene wurde.

Skriuw dan de folgjende koade yn de Module .

7578

Hjir haw ik in subproseduere makke mei de namme Range_Find_Method, wêrby't in Long type fariabele LastRow is ferklearre .

Dan definieare de fariabele mei de metoade Cells.Find . Hjir, ferklearre 7parameters. Yn Hokker parameter haw ik brûkt ("*") dy't de earste net-lege sel sil fine. Jûn A1 as it berik yn de parameter Nei om te begjinnen. Yn de LookAt parameter levere xlPart om elk diel fan de tekst binnen de sel te sjen.

LookIn:=xlFormulas parameter sil sykje nei formules as der binne. SearchOrder:=xlByRows parameter sil fan rjochts nei lofts ferpleatse en rint ek troch elke rige omheech oant it in net-lege sel fynt.

MatchCase:=False parameter sil fertelle Fyn om gjin grutte of lytse letters te beskôgjen. As in net-blank wurdt fûn, stopt it en jout it rigenûmer werom.

Ik haw in berjochtfak brûkt om it resultaat te sjen.

No, Bewarje de koade en gean werom nei it wurkblêd.

Iepenje hjir de Besjoch ljepper >> fan Makro's >> selektearje Makro's besjen

No sil in dialoochfinster ferskine.

Selektearje no út de Makronamme de Range_Find_Method selektearje ek it wurkblêd binnen Makro's yn .

Uteinlik, Run de selektearre Makro .

Sa sil it in berjochtfakje opdûke mei it lêste rigenûmer.

Konklúzje

Yn dit artikel haw ik 5 manieren útlein om VBA de lêste rige yn Excel te finen. Jo kinne ien fan 'e metoaden folgje om de lêste rige te finen. Yn gefal jo betizing of fraach hawwe oer dizze metoaden kinne jokommentaar hjirûnder.

Hugh West is in tige betûfte Excel-trainer en analist mei mear as 10 jier ûnderfining yn 'e yndustry. Hy hat in bachelorstitel yn boekhâlding en finânsjes en in masterstitel yn bedriuwsadministraasje. Hugh hat in passy foar lesjaan en hat in unike lesoanpak ûntwikkele dy't maklik te folgjen en te begripen is. Syn saakkundige kennis fan Excel hat tûzenen studinten en professionals wrâldwiid holpen har feardigens te ferbetterjen en útblinke yn har karriêre. Troch syn blog dielt Hugh syn kennis mei de wrâld, en biedt fergese Excel-tutorials en online training om partikulieren en bedriuwen te helpen har folsleine potensjeel te berikken.