Indholdsfortegnelse
Når du arbejder med Microsoft Excel, er det en almindelig opgave at finde de sidste rækker eller kolonner. Vi bruger tastaturet til at finde de sidst anvendte rækker eller kolonner. Men måske befinder du dig i en situation, hvor du skal finde den sidst anvendte række fra et komplekst datasæt. I denne vejledning lærer du at finde den sidste række med data i et område ved hjælp af VBA i Excel med praktiske eksempler og gode illustrationer.
Download arbejdsbog til øvelser
Download denne øvelsesarbejdsbog.
Find den sidst anvendte række i et interval.xlsm7 metoder til at finde den sidste række med data i et område ved hjælp af Excel VBA-makroer
I de kommende afsnit vil vi give dig syv metoder, der vil hjælpe dig med at finde den sidste række med data i et område ved hjælp af VBA i Excel. Vi anbefaler, at du lærer og anvender alle disse metoder for at berige din Excel-viden.
📕 Læs mere : Find den sidste celle med værdi i en række i Excel (6 metoder)
For at demonstrere denne vejledning bruger vi dette datasæt:
Her har vi et datasæt, som består af nogle spilleroplysninger, og som vi vil bruge til at lære dig alle metoderne.
Åbn VBA-editor
Inden vi går i gang, giver vi dig en simpel påmindelse om at åbne VBA-editoren i Excel.
Først skal du trykke på Alt+F11 på dit tastatur. Vælg derefter Indsæt> Modul. Herefter åbnes VBA-editoren i Excel.
1. Brug af egenskaben Range.End til at finde sidste række med data i et område ved hjælp af VBA
Denne metode finder grundlæggende set slutningen af et område. Primært det sidst anvendte celleområde. Vi kan bruge denne metode til at finde den sidste række med data i et givet område. Ved at bruge VBA får du de ønskede resultater.
📌 Trin
① Først skal du åbne den VBA Redaktør.
② Indtast derefter følgende kode:
Sub range_end_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = Range("B4").End(xlDown).Row MsgBox "Sidst anvendte række: " & LastRow End Sub
③ Gem nu filen, og tryk derefter på Alt+F8 for at åbne dialogboksen Makro. Vælg range_end_method
④ Klik derefter på Kør.
Som du kan se, er det lykkedes os at finde den sidste række med data i et område ved hjælp af VBA i Excel.
2. Range.Find Egenskab af VBA i Excel
I VBA bruger vi metoden Range.Find til at søge efter en bestemt værdi i et datasæt. Men denne metode er praktisk til at finde den sidste række med data i et område. Den fungerer ligesom dialogboksen Find & Replace i Excel. Range.Find-metoden har mange argumenter, men vi vil ikke bruge dem alle.
Før vi bruger metoden Range.Find, skal vi give dig nogle hurtige oplysninger:
Cells.Find("*", searchorder:=xlByRows, searchdirection:=xlPrevious)
Hvad := "*" - Stjernetegn er et jokertegn, der finder enhver tekst eller ethvert tal i cellen. Det er primært det samme som at søge efter en celle, der ikke er tom.
SearchOrder:=xlByRows - Det betyder, at det er nødvendigt at grave hele rækken igennem, før man går videre til den næste. Retningen søges fra venstre mod højre eller fra højre mod venstre afhængigt af SearchDirection-argumentet. Den yderligere mulighed her er xlByColumns, som anvendes ved lokalisering af den sidste kolonne.
SearchDirection:=xlPrevious - Dette bestemmer, hvilken retning der skal undersøges. xlPrevious betyder, at den vil søge fra højre til venstre eller fra bund til top. Det andet alternativ er xlNext, som skifter i den modsatte retning.
📌 Trin
① Først skal du åbne VBA-editoren.
② Indtast derefter følgende kode:
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 "Last used row: " & LastRow End Sub
③ Gem nu filen. Tryk derefter på Alt+F8 for at åbne dialogboksen Makro. Vælg range_find_method.
④ Derefter skal du klikke på Kør .
Til sidst vil den finde den sidste række med data i vores Excel-regneark.
3. Brug af SpecialCells-funktionen til at finde sidste række ved hjælp af VBA
Denne metode fungerer på samme måde som at trykke på Ctrl+End Når du trykker på Ctrl+End på dit tastatur, vil det altid føre dig til den sidste række, uanset hvor du er. Men hvis du vil finde den sidst anvendte række med data ved hjælp af VBA-koder i Excel, er denne kode et must for dig.
📌 Trin
① Først skal du åbne VBA-editoren.
② Indtast derefter følgende kode:
Sub specialcells_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.Cells.SpecialCells(xlCellTypeLastCell).Row MsgBox "Sidst anvendte række: " & LastRow End Sub
③ Gem nu filen. Tryk derefter på Alt+F8 for at åbne dialogboksen Makro. Vælg specialcells_metode .
④ Derefter skal du klikke på Kør .
Som du kan se, er det lykkedes os at finde den sidste række med data ved hjælp af VBA i Excel.
4. Brug af funktionen UsedRange til at finde den sidste række med data i et område
UsedRange i VBA er en egenskab i regnearket, der returnerer et områdeobjekt, der repræsenterer det anvendte område (alle Excel-celler, der anvendes eller indlæses i et regneark) på et bestemt regneark. Det er en egenskab, der betyder det område, der er dækket eller angivet af de øverste venstre anvendte celler og de sidste højre anvendte celler i et regneark.
📌 Trin
① Først skal du åbne VBA-editoren.
② Indtast derefter følgende kode:
Sub usedRange_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.UsedRange.Rows(sht.UsedRange.Rows.Count).Row MsgBox "Sidste brugte række: " & LastRow End Sub
③ Gem nu filen. Tryk derefter på Alt+F8 for at åbne dialogboksen Makro. Vælg usedRange_method.
④ Derefter skal du klikke på Kør .
Endelig vil du se den sidst anvendte række på et regneark i Excel med succes.
5. Brug af tabelområde ved hjælp af VBA i Excel
Hvis du har en tabel i dit regneark, kan du finde den sidste række med data med denne metode.
📌 Trin
① Først skal du åbne VBA-editoren.
② Indtast derefter følgende kode:
Sub TableRange_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.ListObjects("Table1").Range.Rows.Count + 3 MsgBox "Sidste anvendte række: " & LastRow End Sub
Bemærk : Her tilføjer vi 3 med den sidste række, da vores datasæt startede efter række 3.
③ Gem nu filen. Tryk derefter på Alt+F8 for at åbne dialogboksen Makro. Vælg TableRange_metode.
④ Derefter skal du klikke på Kør .
Som du kan se, har vi med succes brugt tabelområde-metoden i VBA-koder til at finde den sidste række med data i Excel.
6. Brug af det navngivne område til at finde den sidste række med data i et område
Denne metode er ikke almindeligvis anvendt i Excel, men vi synes, at du bør lære den for at berige din viden.
Hvis dit datasæt har et navngivet område, kan du bruge denne kode. Se følgende skærmbillede, som indeholder et navngivet område.
📌 Trin
① Først skal du åbne VBA-editoren.
② Indtast derefter følgende kode:
Sub nameRange_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.Range("Named_Range").Rows.Count + 1 MsgBox "sidste anvendte række: " & LastRow End Sub
Bemærk : Vi tilføjer 1 til LastRow, fordi vores række startede efter række 1.
③ Gem nu filen, og tryk derefter på Alt+F8 for at åbne dialogboksen Makro. Vælg nameRange_metode.
④ Klik derefter på Kør.
Som du kan se, er det lykkedes os at finde den sidste række med data ved hjælp af VBA.
7. CurrentRegion-funktionen i VBA i Excel
Du kan også bruge CurrentRegion-metoden i VBA til at finde den sidst anvendte række i Excel. Selv om det er vanskeligt, kan du bruge dette til din fordel, hvis du vil.
📌 Trin
① Først skal du åbne VBA-editoren.
② Indtast derefter følgende kode:
Sub CurrentRegion_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.Range("B4").CurrentRegion.Rows.Count + 3 'tilføj tal efter eget valg' MsgBox "Last used row: " & LastRow End Sub
Bemærk : Range skal være den første celle i dit datasæt. Tilføj dit antal rækker efter eget valg. Her har vi tilføjet 3, fordi vores datasæt startede efter række 3.
③ Gem nu filen. Tryk derefter på Alt+F8 for at åbne dialogboksen Makro. Vælg CurrentRegion_metode
④ Klik derefter på Kør.
Som du kan se, er det lykkedes os at finde den sidste række med data ved hjælp af VBA-koden.
💬 Ting, du skal huske
✎ Range.End virker kun på en enkelt række eller kolonne. Hvis dit datasæt indeholder mange tomme celler, vil det være svært at finde den sidste række med data.
✎ Nogle gange er du nødt til at tilføje nogle værdier til dine metoder for at få koden til at køre problemfrit. Vi tilføjede rækketal for at finde den sidste celle. Så du skal huske, hvorfra dit datasæt startede.
Konklusion
Afslutningsvis håber jeg, at denne vejledning har givet dig et stykke nyttig viden om at finde sidste række med data i et område ved hjælp af VBA i Excel. Vi anbefaler, at du lærer og anvender alle disse instruktioner på dit datasæt. Download arbejdsmappen til øvelser og prøv dem selv. Du er også velkommen til at give feedback i kommentarfeltet. Din værdifulde feedback holder os motiveret til at oprette vejledninger som denne.
Glem ikke at tjekke vores websted Exceldemy.com til forskellige Excel-relaterede problemer og løsninger.
Bliv ved med at lære nye metoder, og bliv ved med at vokse!