VBA Last Row - Top 3 metode pentru a găsi ultimul rând folosit?

În VBA, când trebuie să găsim ultimul rând, există multe metode diferite și cea mai frecvent utilizată este metoda End (XLDown) și există și alte metode, cum ar fi găsirea ultimei valori folosind funcția find în VBA, End (XLDown ). Rândul este cel mai simplu mod de a ajunge la ultimul rând.

Excel VBA Ultimul rând

Dacă scrierea codului este primul progres pe care l-ați făcut în VBA, atunci dinamizarea codului este următorul pas pentru dvs. Excel este plin de referințe celulare. În momentul în care ne referim la celulă, aceasta devine fixă. Dacă datele noastre cresc, trebuie să ne întoarcem la referința celulei și să schimbăm referințele pentru a actualiza rezultatul.

Pentru un exemplu, uitați-vă la codul de mai jos.

Cod:

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

Codul de mai sus spune în D2, valoarea celulei ar trebui să fie însumarea intervalului („B2: B7”).

Acum voi adăuga mai multe valori la listă.

Acum, dacă rulez codul, nu îmi va da rezultatul actualizărilor mai degrabă, el rămâne în continuare la vechiul interval, adică Range („B2: B7”).

Aici este foarte important codul dinamic.

În procesul de dinamizare a codului, găsirea ultimului rând utilizat în coloană este foarte importantă. În acest articol, vom discuta despre modalitățile de a găsi ultimul rând în Excel VBA.

Cum să găsiți ultimul rând folosit în coloană?

Mai jos sunt exemple pentru a găsi ultimul rând utilizat în Excel VBA.

Metoda # 1

Înainte de a vă explica codul, vreau să vă amintiți cum mergeți la ultimul rând din foaia de lucru normală.

Vom folosi tasta de comandă rapidă Ctrl + săgeată în jos.

Ne va duce la ultimul rând folosit înainte de orice celulă goală. Vom folosi aceeași metodă și în VBA pentru a găsi ultimul rând.

Pasul 1: Definiți variabila ca LONG.

Cod:

Sub Last_Row_Example2 () Dim LR As Long 'Pentru înțelegerea LR = Ultima linie End Sub

Pasul 2: Pentru această variabilă, vom atribui ultimul număr de rând utilizat.

Cod:

Sub Last_Row_Example2 () Dim LR Long 'Pentru înțelegere LR = Ultimul rând LR = End Sub

Pasul 3: Scrieți codul ca CELLS (Rows.Count,

Cod:

Sub Last_Row_Example2 () Dim LR As Long 'Pentru înțelegerea LR = Ultimul rând LR = Celule (Rows.Count, End Sub

Pasul 4: menționați acum numărul coloanei ca 1.

Cod:

Sub Last_Row_Example2 () Dim LR As Long 'Pentru a înțelege LR = Ultimul rând LR = Celule (Rows.Count, 1) End Sub

CELLS (Rows.Count, 1) înseamnă să numeri câte rânduri sunt în prima coloană.

Deci, codul VBA de mai sus ne va duce la ultimul rând al foii Excel.

Pasul 5: Dacă suntem în ultima celulă a foii pentru a merge la ultimul rând utilizat, vom apăsa tasta de comandă rapidă este Ctrl + tasta Săgeată sus .

În VBA, trebuie să folosim cheia de terminare și sus, adică End VBA xlUp

Cod:

Sub Last_Row_Example2 () Dim LR As Long 'Pentru înțelegerea LR = Ultimul rând LR = Celule (Rows.Count, 1). End (xlUp) End Sub

Pasul 6: Acum, ne va duce la ultimul rând folosit din partea de jos. Acum avem nevoie de numărul rândului. Deci, utilizați proprietatea ROW pentru a obține numărul rândului.

Cod:

Sub Last_Row_Example2 () Dim LR As Long 'Pentru înțelegerea LR = Ultimul rând LR = Celule (Rows.Count, 1). End (xlUp). End End Sub

Pasul 7: Acum, variabila conține ultimul număr de rând utilizat. Afișați valoarea acestei variabile în caseta de mesaj din codul VBA.

Cod:

Sub Last_Row_Example2 () Dim LR As Long 'Pentru înțelegerea LR = Ultimul rând LR = Celule (Rows.Count, 1). End (xlUp) .Row MsgBox LR End Sub

Rulați acest cod folosind tasta F5 sau manual. Se va afișa ultimul rând folosit.

Ieșire:

Ultimul rând utilizat în această foaie de lucru este 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

Codul vă oferă, de asemenea, ultimul rând utilizat. De exemplu, uitați-vă la imaginea de mai jos a foii de lucru.

Dacă rulez codul manual sau folosind tasta F5, rezultatul va fi 12, deoarece 12 este ultimul rând utilizat.

Ieșire:

Acum voi șterge al 12-lea rând și voi vedea rezultatul.

Chiar dacă am șters un rând, acesta arată în continuare rezultatul ca 12.

Pentru a face acest cod să funcționeze, trebuie să apăsăm butonul de salvare după fiecare acțiune. Apoi, acest cod va oferi rezultate exacte.

Am salvat registrul de lucru și acum văd rezultatul.

Metoda # 3

Putem găsi ultimul rând VBA din gama utilizată. Codul de mai jos returnează și ultimul rând folosit.

Cod:

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

Aceasta va returna și ultimul rând folosit.

Ieșire:

Articole interesante...