Posledný riadok VBA Najlepšie 3 metódy na vyhľadanie posledného použitého riadku?

Vo VBA, keď musíme nájsť posledný riadok, existuje veľa rôznych metód a najbežnejšie používanou metódou je metóda End (XLDown) a existujú aj ďalšie metódy, ako napríklad nájsť poslednú hodnotu pomocou funkcie find vo VBA, End (XLDown). ). Riadok je najjednoduchší spôsob, ako sa dostať do posledného riadku.

Posledný riadok aplikácie Excel VBA

Ak je napísanie kódu prvým pokrokom, ktorý ste dosiahli vo VBA, je ďalším krokom pre vás dynamizácia kódu. Excel je plný odkazov na bunky. V okamihu, keď odkážeme na bunku, stane sa opravená. Ak sa naše údaje zvýšia, musíme sa vrátiť k odkazu na bunku a zmeniť odkazy, aby bol výsledok aktuálny.

Napríklad si pozrite nasledujúci kód.

Kód:

Sub Last_Row_Example1 () Range ("D2"). Value = WorksheetFunction.Sum (Range ("B2: B7")) End Sub

Vyššie uvedený kód hovorí v D2, že hodnota bunky by mala byť súčtom rozsahu („B2: B7“).

Teraz do zoznamu pridám ďalšie hodnoty.

Teraz, keď spustím kód, nebude mi dávať skôr výsledok aktualizácií, stále sa drží starého rozsahu, tj Range („B2: B7“).

Tu je veľmi dôležitý dynamický kód.

V procese vytvárania dynamického kódu je veľmi dôležité nájsť posledný použitý riadok v stĺpci. V tomto článku si rozoberieme spôsoby vyhľadania posledného riadku v Exceli VBA.

Ako nájsť posledný použitý riadok v stĺpci?

Nižšie uvádzame príklady na nájdenie posledného použitého riadku v programe Excel VBA.

Metóda č. 1

Skôr ako vám vysvetlím kód, chcem, aby ste si spomenuli, ako prechádzate do posledného riadku v normálnom pracovnom hárku.

Použijeme klávesovú skratku Ctrl + šípka dole.

Prejde nás na posledný použitý riadok pred prázdnou bunkou. Rovnakú metódu použijeme aj vo VBA, aby sme našli posledný riadok.

Krok 1: Definujte premennú ako DLHÚ.

Kód:

Sub Last_Row_Example2 () Dim LR As Long 'Na pochopenie LR = Sub End posledného riadku

Krok 2: K tejto premennej priradíme naposledy použité číslo riadku.

Kód:

Sub Last_Row_Example2 () Dim LR As Long 'Pre pochopenie LR = posledný riadok LR = koncový sub

Krok 3: Napíšte kód ako CELLS (Rows.Count,

Kód:

Sub Last_Row_Example2 () Dim LR As Long 'Pre pochopenie LR = posledný riadok LR = bunky (riadky. Počet, koncový sub

Krok 4: Teraz uveďte číslo stĺpca ako 1.

Kód:

Sub Last_Row_Example2 () Dim LR As Long 'Pre pochopenie LR = posledný riadok LR = bunky (riadky. Počet, 1) koncový sub

CELLS (Rows.Count, 1) znamená spočítať, koľko riadkov je v prvom stĺpci.

Vyššie uvedený kód VBA nás teda zavedie do posledného riadku hárka programu Excel.

Krok 5: Ak sa nachádzame v poslednej bunke tabuľky, aby sme prešli na posledný použitý riadok, stlačíme klávesovú skratku Ctrl + šípka hore .

Vo VBA musíme použiť kláves end a hore, tj. End VBA xlUp

Kód:

Sub Last_Row_Example2 () Dim LR As Long 'Pre pochopenie LR = posledný riadok LR = bunky (Rows.Count, 1). End (xlUp) End Sub

Krok 6: Teraz sa dostaneme k poslednému použitému riadku zdola. Teraz potrebujeme číslo riadku. Použite teda vlastnosť ROW na získanie čísla riadku.

Kód:

Sub Last_Row_Example2 () Dim LR As Long 'Pre pochopenie LR = posledný riadok LR = bunky (Rows.Count, 1). End (xlUp) .Row End Sub

Krok 7: Teraz obsahuje premenná číslo posledného použitého riadku. Ukážte hodnotu tejto premennej v okne správy v kóde VBA.

Kód:

Sub Last_Row_Example2 () Dim LR As Long 'Pre pochopenie LR = posledný riadok LR = bunky (Rows.Count, 1). End (xlUp). Row MsgBox LR End Sub

Tento kód spustite pomocou klávesu F5 alebo manuálne. Zobrazí posledný použitý riadok.

Výkon:

Posledný použitý riadok v tomto pracovnom hárku je 13.

Now I will delete one more line and run the code and see the dynamism of the code.

Ok, now the result automatically takes the last row.

This is what the dynamic VBA last row code is.

As I showed in the earlier example, change the row number from a numeric value to LR.

Code:

Sub Last_Row_Example2() Dim LR As Long 'For understanding LR = Last Row LR = Cells(Rows.Count, 1).End(xlUp).Row Range("D2").Value = WorksheetFunction.Sum(Range("B2:B" & LR)) End Sub

I have removed B13 and added the variable name LR.

Now it does not matter how many rows you add. It will automatically take the updated reference.

Method #2

We can also find the last row in VBA by using the Range object and special VBA cells property as well.

Code:

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

Tento kód vám poskytne aj posledný použitý riadok. Napríklad si pozrite nasledujúci obrázok pracovného hárka.

Ak spustím kód ručne alebo pomocou klávesu F5, výsledok bude 12, pretože 12 je posledný použitý riadok.

Výkon:

Teraz vymažem 12. riadok a uvidím výsledok.

Aj keď som vymazal jeden riadok, stále zobrazuje výsledok ako 12.

Aby tento kód fungoval, musíme po každej akcii stlačiť tlačidlo uložiť. Tento kód potom vráti presné výsledky.

Uložil som zošit a teraz vidím výsledok.

Metóda č. 3

Posledný riadok VBA nájdeme v použitom rozsahu. Nasledujúci kód tiež vráti posledný použitý riadok.

Kód:

Sub Last_Row_Example4 () Dim LR As Long LR = ActiveSheet.UsedRange.Rows (ActiveSheet.UsedRange.Rows.Count). Row MsgBox LR End Sub

Týmto sa vráti aj posledný použitý riadok.

Výkon:

Zaujímavé články...