Găsiți ultimul rând cu date într-un interval utilizând macro Excel VBA (7 metode)

  • Imparte Asta
Hugh West

În timp ce lucrați cu Microsoft Excel, găsirea ultimelor rânduri sau coloane este o sarcină obișnuită. Folosim tastatura pentru a găsi ultimele rânduri sau coloane utilizate. Dar, este posibil să vă aflați într-o situație în care trebuie să găsiți ultimul rând utilizat dintr-un set de date complex. În acest tutorial, veți învăța să găsiți ultimul rând cu date într-un interval utilizând VBA în Excel cu exemple practice și ilustrații adecvate.

Descărcați caietul de practică

Descărcați acest caiet de practică.

Găsiți ultimul rând utilizat într-un interval.xlsm

7 Metode pentru a găsi ultimul rând cu date într-un interval folosind macro Excel VBA

În secțiunile următoare, vă vom prezenta șapte metode care vă vor ajuta să găsiți ultimul rând cu date dintr-un interval folosind VBA în Excel. Vă recomandăm să învățați și să aplicați toate aceste metode pentru a vă îmbogăți cunoștințele despre Excel.

📕 Citește mai mult : Găsiți ultima celulă cu valoare în rând în Excel (6 metode)

Pentru a demonstra acest tutorial, vom folosi acest set de date:

Aici avem un set de date format din informații despre unii jucători. Îl vom folosi pentru a vă învăța toate metodele.

Deschideți editorul VBA

Înainte de a începe, vă reamintim că trebuie să deschideți Editorul VBA în Excel.

În primul rând, apăsați Alt+F11 de pe tastatură. Apoi, selectați Insert> Module. După aceea, se va deschide editorul VBA din Excel.

1. Utilizarea proprietății Range.End pentru a găsi ultimul rând cu date dintr-un interval utilizând VBA

Acum, această metodă găsește practic sfârșitul unui interval. În principal, ultimul interval de celule utilizat. Putem utiliza această metodă pentru a găsi ultimul rând cu date dintr-un anumit interval. Utilizarea VBA vă va oferi rezultatele dorite.

📌 Pași

În primul rând, deschideți fișierul VBA Editor.

Apoi, introduceți următorul cod:

 Sub range_end_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = Range("B4").End(xlDown).Row MsgBox "Ultimul rând utilizat: " & LastRow End Sub 

Acum, salvați fișierul. Apoi, apăsați Alt+F8 pentru a deschide caseta de dialog Macro. Selectați range_end_method

După aceea, faceți clic pe Run (Executare).

După cum puteți vedea, am reușit să găsim cu succes ultimul rând cu date dintr-un interval folosind VBA în Excel.

2. Proprietatea Range.Find a VBA în Excel

Acum, în VBA folosim metoda Range.Find pentru a căuta o anumită valoare dintr-un set de date. Dar această metodă este utilă pentru a găsi ultimul rând cu date dintr-un interval. Funcționează ca și caseta de dialog Find & Replace din Excel. Metoda Range.Find are o mulțime de argumente. Dar nu le vom folosi pe toate.

Înainte de a utiliza metoda Range.Find, să vă oferim câteva informații rapide:

Cells.Find("*", searchorder:=xlByRows, searchdirection:=xlPrevious)

Ce := "*" - Asteriscul este un caracter joker care descoperă orice text sau număr din celulă. În primul rând, este același lucru ca și în cazul explorării unei celule care nu este goală.

SearchOrder:=xlByRows - Acest lucru înseamnă că trebuie să căutați în fiecare rând întreg înainte de a trece la următorul. Direcția este căutată de la stânga la dreapta sau de la dreapta la stânga, în funcție de argumentul SearchDirection. Opțiunea suplimentară aici este xlByColumns, care este utilizată atunci când se localizează ultima coloană.

SearchDirection:=xlPrevious - Aceasta determină direcția de explorare. xlPrevious înseamnă că va căuta de la dreapta la stânga sau de jos în sus. Cealaltă alternativă este xlNext, care se deplasează în direcția opusă.

📌 Pași

În primul rând, deschideți VBA Editor.

Apoi, introduceți următorul cod:

 Sub range_find_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.Cells.Find("*", searchorder:=xlByRows, searchdirection:=xlPrevious).Row MsgBox "Ultimul rând utilizat: " & LastRow End Sub 

Acum, salvați fișierul. Apoi, apăsați Alt+F8 pentru a deschide caseta de dialog Macro. Selectați range_find_method.

După aceea, faceți clic pe Rulați .

În final, se va găsi ultimul rând cu date din foaia de calcul Excel.

3. Utilizarea funcției SpecialCells pentru a găsi ultimul rând utilizând VBA

Această metodă funcționează ca și cum ai apăsa Ctrl+Fin Când apăsați Ctrl+End pe tastatură, veți ajunge întotdeauna la ultimul rând, indiferent unde vă aflați. Dar dacă doriți să găsiți ultimul rând utilizat cu date utilizând coduri VBA în Excel, acest cod este o necesitate pentru dvs.

📌 Pași

În primul rând, deschideți VBA Editor.

Apoi, introduceți următorul cod:

 Sub specialcells_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.Cells.SpecialCells(xlCellTypeLastCell).Row MsgBox "Ultimul rând utilizat: " & LastRow End Sub 

Acum, salvați fișierul. Apoi, apăsați Alt+F8 pentru a deschide caseta de dialog Macro. Selectați metoda_celulelor_speciale .

După aceea, faceți clic pe Rulați .

După cum puteți vedea, am reușit să găsim ultimul rând cu date utilizând VBA în Excel.

4. Utilizarea funcției UsedRange pentru a găsi ultimul rând cu date dintr-un interval

UsedRange în VBA este o posesie a foii de lucru care returnează un obiect de interval care reprezintă intervalul utilizat (toate celulele Excel utilizate sau încărcate într-o foaie de lucru) pe o anumită foaie de lucru. Este o proprietate care înseamnă zona acoperită sau specificată de celulele utilizate în stânga sus și de ultimele celule utilizate în dreapta într-o foaie de lucru.

📌 Pași

În primul rând, deschideți VBA Editor.

Apoi, introduceți următorul cod:

 Sub usedRange_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.UsedRange.Rows(sht.UsedRange.Rows.Count).Row MsgBox "Ultimul rând utilizat: " & LastRow End Sub 

Acum, salvați fișierul. Apoi, apăsați Alt+F8 pentru a deschide caseta de dialog Macro. Selectați usedRange_method.

După aceea, faceți clic pe Rulați .

În cele din urmă, veți vedea ultimul rând utilizat pe o foaie de calcul în Excel cu succes.

5. Utilizarea intervalului de tabele folosind VBA în Excel

Dacă aveți un tabel în foaia de calcul, puteți găsi ultimul rând cu date prin această metodă.

📌 Pași

În primul rând, deschideți VBA Editor.

Apoi, introduceți următorul cod:

 Sub TableRange_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.ListObjects("Table1").Range.Rows.Count + 3 MsgBox "Ultimul rând utilizat: " & LastRow End Sub 

Notă : Aici, adăugăm 3 cu ultimul rând, deoarece setul nostru de date a început după rândul 3.

Acum, salvați fișierul. Apoi, apăsați Alt+F8 pentru a deschide caseta de dialog Macro. Selectați TableRange_method.

După aceea, faceți clic pe Rulați .

După cum puteți vedea, am utilizat cu succes metoda de interval de tabel în codurile VBA pentru a găsi ultimul rând cu date în Excel.

6. Utilizarea intervalului numit pentru a găsi ultimul rând cu date dintr-un interval

Această metodă nu este folosită în mod obișnuit în Excel, dar credem că ar trebui să o învățați pentru a vă îmbogăți cunoștințele.

Dacă setul dvs. de date are un interval numit, puteți utiliza acest cod. Aruncați o privire la următoarea captură de ecran, care conține un interval numit.

📌 Pași

În primul rând, deschideți VBA Editor.

Apoi, introduceți următorul cod:

 Sub nameRange_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.Range("Named_Range").Rows.Count + 1 MsgBox "last used row: " & LastRow End Sub 

Notă : Adăugăm 1 la LastRow deoarece intervalul nostru a început după rândul 1.

Acum, salvați fișierul. Apoi, apăsați Alt+F8 pentru a deschide caseta de dialog Macro. Selectați nameRange_method.

După aceea, faceți clic pe Run (Executare).

După cum puteți vedea, am reușit să găsim ultimul rând cu date utilizând VBA.

7. Funcția CurrentRegion din VBA în Excel

De asemenea, puteți utiliza metoda CurrentRegion din VBA pentru a găsi ultimul rând utilizat în Excel. Deși este complicat, puteți utiliza acest lucru în avantajul dvs. dacă doriți.

📌 Pași

În primul rând, deschideți VBA Editor.

Apoi, introduceți următorul cod:

 Sub CurrentRegion_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.Range("B4").CurrentRegion.Rows.Count + 3 'adăugați numere la alegere' MsgBox "Last used row: " & LastRow End Sub 

Notă : Range ar trebui să fie prima celulă a setului de date și adăugați numărul de rânduri în funcție de alegerea dvs. Aici am adăugat 3, deoarece setul nostru de date a început după rândul 3.

Acum, salvați fișierul. Apoi, apăsați Alt+F8 pentru a deschide caseta de dialog Macro. Selectați CurrentRegion_method

După aceea, faceți clic pe Run (Executare).

După cum puteți vedea, am reușit să găsim cu succes ultimul rând cu date utilizând codul VBA.

💬 Lucruri de reținut

Range.End funcționează numai pe un singur rând sau coloană. Dacă setul de date conține multe celule goale, va fi dificil să găsiți ultimul rând cu date.

Uneori, trebuie să adăugați unele valori la metodele dvs. pentru a executa codul fără probleme. Am adăugat numere de rând pentru a găsi ultima celulă. Prin urmare, trebuie să vă amintiți de unde a început setul de date.

Concluzie

În concluzie, sper că acest tutorial v-a oferit cunoștințe utile pentru a găsi ultimul rând cu date într-un interval folosind VBA în Excel. Vă recomandăm să învățați și să aplicați toate aceste instrucțiuni la setul dvs. de date. Descărcați registrul de lucru de practică și încercați-le singur. De asemenea, nu ezitați să oferiți feedback în secțiunea de comentarii. Feedback-ul dvs. valoros ne menține motivați să creăm tutoriale ca acesta.

Nu uitați să verificați site-ul nostru Exceldemy.com pentru diverse probleme și soluții legate de Excel.

Continuați să învățați noi metode și continuați să creșteți!

Hugh West este un trainer și analist Excel cu o experiență de peste 10 ani în industrie. Deține o diplomă de licență în contabilitate și finanțe și un master în administrarea afacerilor. Hugh are o pasiune pentru predare și a dezvoltat o abordare unică de predare care este ușor de urmărit și de înțeles. Cunoștințele sale experte despre Excel au ajutat mii de studenți și profesioniști din întreaga lume să-și îmbunătățească abilitățile și să exceleze în cariera lor. Prin blogul său, Hugh își împărtășește cunoștințele lumii, oferind tutoriale gratuite Excel și instruire online pentru a ajuta persoanele și companiile să-și atingă întregul potențial.