Zadnja vrstica VBA - Kako najti zadnjo uporabljeno vrstico v Excelu z uporabo kode VBA?

Kazalo:

Anonim

Excel VBA Zadnja vrstica

Iskanje zadnje vrstice v stolpcu je pomemben vidik pri pisanju makrov in njihove dinamike. Ker ne bi radi raje posodabljali obsegov celic, ko delamo s sklici na celice Excel. Kot koder / razvijalec bi vedno raje napisali dinamično kodo, ki jo lahko uporabite na poljubnih podatkih in zadostuje vašim zahtevam. Poleg tega bi bilo vedno super, če boste imeli zadnje podatke o svojih podatkih, tako da lahko dinamično spremenite kodo glede na vaše zahteve.

Izpostavil bom samo en primer, ki ponavlja pomen dinamične kode.

Recimo, da imam spodaj navedene podatke o zaposlenih in njihovih plačah.

Poglejte spodnjo kodo:

Koda:

 Podprimer1 () Obseg ("D2") Vrednost = WorksheetFunction.Sum (obseg ("B2: B11")) Končni pod 

Tukaj ta koda natisne vsoto plač za vse zaposlene (celica B2: B11 ) v celici D2 . Glej sliko spodaj:

Zdaj, kaj pa, če v te podatke dodam nekaj celic in znova zaženem to kodo?

Logično gledano zgornja koda ne bo seštevala vseh 14 vrstic iz stolpca B. Razlog za to je obseg, ki smo ga posodobili v WorksheetFunction (kar je B2: B11). Zato je za nas pomembnejša dinamična koda, ki lahko upošteva zadnjo napolnjeno vrstico.

V tem članku bom predstavil nekaj metod, ki so lahko koristne pri iskanju zadnje vrstice za dani niz podatkov z uporabo kode VBA.

Kako najti zadnjo uporabljeno vrstico v stolpcu z uporabo VBA?

Spodaj so različni primeri z različnimi metodami za iskanje zadnje uporabljene vrstice stolpca v Excelu z uporabo kode VBA.

To predlogo za zadnjo vrstico VBA lahko prenesete tukaj - VBA predlogo za zadnjo vrstico

Primer # 1 - Uporaba metode Range.End ()

No, ta metoda je enaka kot uporaba Ctrl + puščice navzdol v Excelu, da se odpravite do zadnje prazne vrstice. V podobnih vrsticah sledite spodnjim korakom za ustvarjanje kode v VBA, da pridete do zadnje prazne vrstice stolpca v Excelu.

1. korak: Določite spremenljivko, ki lahko sprejme vrednost za zadnjo, ne prazno vrstico stolpca excel.

Koda:

 Sub Primer2 () Dim Last_Row As Long End Sub 

Tu je spremenljivka Last_Row definirana kot LONG samo zato, da se prepriča, da lahko sprejme poljubno število argumentov.

2. korak: Uporabite definirano spremenljivko, da zadržite vrednost zadnje ne prazne vrstice.

Koda:

 Sub Primer2 () Dim Last_Row As Long Last_Row = End Sub 

3. korak: Vnesite kodo, začenši s CELLS (vrstice.številka pred Last_Row = .

Koda:

 Pod-primer2 () Dim Last_Row As Long Last_Row = Celice (vrstice.številka konec Sub 

4. korak: Za vejico v zgoraj navedeni kodi omenite 1. Vrednost številka 1 je sinonim za prvi stolpec na seznamu excel.

Koda:

 Pod-primer2 () Dim Last_Row As Long Last_Row = Celice (vrstice.številka, 1) konec podnapisa 

Ta koda omogoča VBA, da ugotovi skupno število vrstic (praznih + nepopolnih) v prvem stolpcu Excelovega delovnega lista. To pomeni, da ta koda omogoča sistemu, da gre v zadnjo celico Excela.

Zdaj pa kaj, če ste v zadnji celici excela in želite iti do zadnje ne prazne vrstice? Uporabili boste Ctrl + puščico navzgor, kajne?

Ista logika, ki jo bomo uporabili v naslednji vrstici kode.

5. korak: S pomočjo kombinacije tipke End in xlUp pojdite do zadnje prazne vrstice v excelu.

Koda:

 Podpomenka2 () Dim Last_Row As Long Last_Row = Cells (Rows.Count, 1) .End (xlUp) End Sub 

Tako boste prišli do zadnje prazne vrstice v excelu. Vendar ste želeli številko vrstice za isto.

6. korak: Uporabite ROW, da dobite številko vrstice zadnje, ki ni prazna.

Koda:

 Pod-primer2 () Dim Last_Row As Long Last_Row = Cells (Rows.Count, 1) .End (xlUp) .Row End Sub 

7. korak: Prikažite vrednost Last_Row, ki vsebuje zadnjo ne prazno številko vrstice s pomočjo MsgBox.

Koda:

 Pod-primer2 () Dim Last_Row as Long Last_Row = Celice (vrstice.številka, 1) .End (xlUp) .Row MsgBox Last_Row End Sub 

Korak 8: Zaženite kodo s tipko Run ali pritiskom na F5 in poglejte izhod.

Izhod:

9. korak: Zdaj izbrišimo eno vrstico in preverimo, ali koda daje natančen rezultat ali ne. Pomagal nam bo pri preverjanju dinamičnosti naše kode.

Primer # 2 - Uporaba Range in SpecialCell

Lahko uporabimo tudi lastnost Range in SepcialCells v VBA, da dobimo zadnjo ne prazno vrstico Excelovega lista.

Sledite spodnjim korakom, da dobite zadnjo ne prazno vrstico v excelu z uporabo kode VBA:

1. korak: Znova določite spremenljivko kot Dolgo.

Koda:

 Sub Primer3 () Dim Last_Row As Long End Sub 

2. korak: Začnite shranjevanje vrednosti v spremenljivko Last_Row z uporabo operaterja dodelitve.

Koda:

 Sub Primer3 () Dim Last_Row As Long Last_Row = End Sub 

3. korak: Začnite območje tipkanja ("A: A") .

Koda:

 Sub Primer3 () Dim Last_Row as Long Last_Row = Obseg ("A: A") Konec Pod 

4. korak: S funkcijo SpecialCells poiščite zadnjo ne prazno celico.

Koda:

 Pod-primer3 () Dim Last_Row as Long Last_Row = Obseg ("A: A"). SpecialCells (xlCellTypeLastCell) End Sub 

Ta funkcija SpecialCells izbere zadnjo celico iz svojega excela, saj je napisana v oklepajih ( xlCellTypeLastCell omogoča izbiro zadnje prazne celice s seznama excel).

5. korak: Zdaj uporabite ROW, da zadnjo vrstico dobite s seznama excel.

Koda:

 Pod-primer3 () Dim Last_Row As Long Last_Row = Dolžina ("A: A"). SpecialCells (xlCellTypeLastCell) .Row End Sub 

To bo vrnilo zadnjo ne prazno vrstico za vas.

6. korak: Zdaj dodelite to vrednost Last_Row MsgBoxu, da bomo na polju s sporočilom lahko videli zadnjo ne prazno številko vrstice.

Koda:

 Pod-primer3 () Dim Last_Row As Long Last_Row As Long Last_Row = Obseg ("A: A"). SpecialCells (xlCellTypeLastCell). Row MsgBox Last_Row End Sub 

7. korak: Zaženite kodo s pritiskom na tipko F5 ali gumb Zaženi na vrhu levega kota.

Izhod:

Lahko vidite, da je zadnja številka celic, ki je prazna, izpuščena skozi MsgBox glede na stolpec A. Ker smo že omenili stolpec A v funkciji Range, medtem ko definiramo spremenljivo formulo.

Korak 8: Če izbrišemo vrstico in lahko zaženemo to formulo. Poglejmo, kaj se zgodi.

Vidite, da je sistem še vedno dal število vrstic kot 14. Čeprav sem črtal vrstico in je dejansko število vrstic 13, sistem ni natančno zajel števila vrstic. Če želite zajeti dejansko število vrstic, morate shraniti delovni list in znova zagnati kodo.

Na tem posnetku zaslona lahko vidite trenutno število vrstic.

Primer # 3 - Uporaba Range.Find ()

Sledite spodnjim korakom, da dobite zadnjo ne prazno vrstico v excelu z uporabo kode VBA:

1. korak: Določite spremenljivko tako dolgo.

Koda:

 Sub Primer4 () Dim Last_Row As Long End Sub 

2. korak: Zdaj uporabite naslednjo kodo za ogled zadnje ne prazne vrstice.

Koda:

 Podpomenka4 () Dim Last_Row As Long Last_Row = Cells.Find (Kaj: = "*", _ Po: = domet ("A1"), _ LookAt: = xlPart, _ LookIn: = xlFormulas, _ SearchOrder: = xlByRows, _ SearchDirection: = xlPrevious, _ MatchCase: = False) .Row End Sub 

Tukaj funkcija FIND poišče prvo ne prazno celico. Zvezdica (*) je nadomestni operater, ki pomaga ugotoviti isto.

Z začetkom celice A1 se sistem vrne nazaj v zadnjo celico s lista in išče v smeri nazaj (xlPrevious). Premakne se od desne proti levi (xlByRows) in se v istem listu vrti skozi vse vrstice v podobnih vrsticah, dokler ne najde prazne vrstice (glej .ROW na koncu kode).

3. korak: Uporabite MsgBox, da shranite vrednost zadnje ne prazne vrstice in jo vidite kot pojavno okno.

Koda:

 Podpomenka4 () Dim Last_Row As Long Last_Row = Cells.Find (Kaj: = "*", _ Po: = domet ("A1"), _ LookAt: = xlPart, _ LookIn: = xlFormulas, _ SearchOrder: = xlByRows, _ SearchDirection: = xlPrevious, _ MatchCase: = False). Row MsgBox Last_Row End Sub 

4. korak: Zaženite kodo in si oglejte izhod kot pojavno okno z zadnjo neprazno številko vrstice.

Izhod:

Stvari, ki jih je treba zapomniti

  • Konec (Primer 1) lahko uporabite za iskanje prve prazne celice / vrstice ali zadnje ne prazne celice / vrstice v danem stolpcu z uporabo kode VBA.
  • Konec večino časa deluje na enem stolpcu. Če imate podatke v obsegih, bi se težko odločili, kateri stolpec naj bo uporabljen za iskanje zadnje ne prazne vrstice.
  • Find (Primer 3) deluje na celotnem območju od točke začetka in z uporabo kode VBA odkrije zadnjo ne prazno celico / vrstico v danem stolpcu. Uporabite ga lahko tudi za iskanje zadnjega ne praznega stolpca.

Priporočeni članki

To je vodnik za zadnjo vrstico VBA. Tukaj razpravljamo, kako najti zadnjo uporabljeno vrstico v danem stolpcu, skupaj z nekaj praktičnimi primeri in naloženo predlogo excela. Če želite izvedeti več, si oglejte tudi naslednje članke -

  1. Kako uporabljati stolpec VBA?
  2. Kako izbrati vrstice in stolpce Excela?
  3. Pregled VBA Range Celice
  4. Kako dodati celice v Excelu?