Etsi viimeinen rivi, jossa on tietoja alueella Excel VBA -makrojen avulla (7 menetelmää)

  • Jaa Tämä
Hugh West

Kun työskentelet Microsoft Excelin kanssa, viimeisten rivien tai sarakkeiden löytäminen on yleinen tehtävä. Käytämme näppäimistöä viimeisten käytettyjen rivien tai sarakkeiden löytämiseen. Saatat kuitenkin joutua tilanteeseen, jossa sinun on löydettävä viimeisin käytetty rivi monimutkaisesta tietokokonaisuudesta. Tässä opetusohjelmassa opit etsimään viimeisen rivin, jossa on tietoja alueelta, käyttämällä VBA: ta Excelissä käytännön esimerkkien ja asianmukaisten kuvien avulla.

Lataa harjoituskirja

Lataa tämä harjoituskirja.

Viimeisen käytetyn rivin etsiminen alueelta.xlsm

7 Menetelmät löytää viimeinen rivi, jossa on tietoja Excel VBA -makrojen avulla

Seuraavissa osioissa esittelemme seitsemän menetelmää, joiden avulla voit etsiä viimeisen rivin, jolla on tietoja alueesta, käyttämällä VBA:ta Excelissä. Suosittelemme, että opit ja sovellat kaikkia näitä menetelmiä Excel-tietämyksesi rikastuttamiseksi.

📕 Lue lisää : Etsi viimeinen solu, jossa on arvo Excelin rivillä (6 menetelmää)

Tämän opetusohjelman havainnollistamiseksi käytämme tätä tietokokonaisuutta:

Meillä on tässä tietokokonaisuus, joka koostuu joidenkin pelaajien tiedoista. Käytämme sitä kaikkien menetelmien opettamiseen.

Avaa VBA-editori

Ennen kuin aloitamme, annamme sinulle yksinkertaisen muistutuksen VBA-editorin avaamisesta Excelissä.

Paina ensin Alt+F11 näppäimistöllä. Valitse sitten Insert> Module. Tämän jälkeen se avaa Excelin VBA-editorin.

1. Range.End-ominaisuuden käyttäminen viimeisen rivin etsimiseen VBA:n avulla, jossa on alueen tietoja.

Tällä menetelmällä löydetään periaatteessa alueen loppu. Pääasiassa viimeksi käytetty solualue. Voimme käyttää tätä menetelmää löytääksemme viimeisen rivin, jolla on tietoja tietyllä alueella. VBA:n avulla saat halutut tulokset.

📌 Askeleet

Avaa ensin VBA Toimittaja.

Kirjoita sitten seuraava koodi:

 Sub range_end_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = Range("B4").End(xlDown).Row MsgBox "Viimeksi käytetty rivi: " & LastRow End Sub 

Tallenna tiedosto ja paina sitten Alt+F8 avataksesi Makro-valintaikkunan. Valitse range_end_method

Napsauta sen jälkeen Suorita.

Kuten näet, olemme onnistuneesti löytäneet viimeisen rivin, jolla on tietoja alueella, käyttämällä VBA:ta Excelissä.

2. VBA:n Range.Find-ominaisuus Excelissä

VBA:ssa käytämme Range.Find-menetelmää etsiessämme tiettyä arvoa tietokokonaisuudesta. Mutta tämä menetelmä on kätevä, kun haluamme löytää viimeisen rivin, jolla on tietoja tietyssä alueessa. Se toimii kuten Excelin Find & Replace -valintaikkuna. Range.Find-menetelmällä on paljon argumentteja, mutta emme käytä niitä kaikkia.

Ennen kuin käytämme Range.Find-menetelmää, annamme sinulle muutaman nopean tiedon:

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

Mikä := "*" - Tähti on jokerimerkki, joka löytää minkä tahansa solussa olevan tekstin tai numeron. Se on ensisijaisesti sama kuin ei-yhjän solun etsintä.

SearchOrder:=xlByRows (hakujärjestys) - Tämä tarkoittaa Etsitään koko rivi ennen seuraavaan siirtymistä. Suunta etsitään vasemmalta oikealle tai oikealta vasemmalle riippuen SearchDirection-argumentista. Tässä on lisävaihtoehtona xlByColumns, jota käytetään viimeisen sarakkeen paikantamisessa.

SearchDirection:=xlEdellinen - Tämä määrittää, mihin suuntaan etsintä tehdään. xlPrevious tarkoittaa, että se etsii oikealta vasemmalle tai alhaalta ylöspäin. Toinen vaihtoehto on xlNext, joka siirtyy vastakkaiseen suuntaan.

📌 Askeleet

Avaa ensin VBA-editori.

Kirjoita sitten seuraava koodi:

 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 "Viimeksi käytetty rivi: " & LastRow End Sub 

Tallenna nyt tiedosto. Avaa sitten makrovalintaikkuna painamalla Alt+F8. Valitse sitten range_find_method.

Napsauta sen jälkeen Suorita .

Lopulta se löytää Excel-taulukkomme viimeisen rivin, jolla on tietoja.

3. SpecialCells-funktion käyttäminen viimeisen rivin etsimiseen VBA:n avulla

Tämä menetelmä toimii painamalla Ctrl+End Kun painat näppäimistölläsi Ctrl+End, se vie sinut aina viimeiselle riville riippumatta siitä, missä olet. Mutta jos haluat löytää viimeisen käytetyn rivin, jossa on tietoja, käyttämällä VBA-koodeja Excelissä, tämä koodi on pakollinen sinulle.

📌 Askeleet

Avaa ensin VBA-editori.

Kirjoita sitten seuraava koodi:

 Sub specialcells_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.Cells.SpecialCells(xlCellTypeLastCell).Row MsgBox "Viimeksi käytetty rivi: " & LastRow End Sub 

Tallenna nyt tiedosto. Avaa sitten makrovalintaikkuna painamalla Alt+F8. Valitse sitten specialcells_method .

Napsauta sen jälkeen Suorita .

Kuten näet, olemme onnistuneet löytämään viimeisen rivin, jolla on tietoja, käyttämällä VBA:ta Excelissä.

4. UsedRange-funktion käyttäminen viimeisen rivin etsimiseen, jonka tiedot ovat alueella.

UsedRange VBA:ssa on työarkin hallussapito, joka palauttaa alueobjektin, joka edustaa käytettyä aluetta (kaikki Excelin käytetyt tai ladatut solut työarkissa) tietyllä työarkilla. Se on ominaisuus, joka tarkoittaa aluetta, joka on katettu tai määritetty ylävasemmalla käytetyillä soluilla ja viimeisellä oikealla käytetyillä soluilla työarkissa.

📌 Askeleet

Avaa ensin VBA-editori.

Kirjoita sitten seuraava koodi:

 Sub usedRange_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.UsedRange.Rows(sht.UsedRange.Rows.Count).Row MsgBox "Viimeksi käytetty rivi: " & LastRow End Sub 

Tallenna nyt tiedosto. Avaa sitten makrovalintaikkuna painamalla Alt+F8. Valitse sitten usedRange_method.

Napsauta sen jälkeen Suorita .

Lopulta näet Excelin työarkin viimeisen käytetyn rivin onnistuneesti.

5. Taulukkoalueiden käyttäminen VBA:n avulla Excelissä

Jos työarkissasi on taulukko, voit etsiä viimeisen tietorivin tällä menetelmällä.

📌 Askeleet

Avaa ensin VBA-editori.

Kirjoita sitten seuraava koodi:

 Sub TableRange_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.ListObjects("Table1").Range.Rows.Count + 3 MsgBox "Viimeksi käytetty rivi: " & LastRow End Sub 

Huomautus : Tässä lisätään 3 viimeiselle riville, koska tietokokonaisuutemme alkoi rivin 3 jälkeen.

Tallenna nyt tiedosto. Avaa sitten makrovalintaikkuna painamalla Alt+F8. Valitse sitten TableRange_method.

Napsauta sen jälkeen Suorita .

Kuten näet, olemme onnistuneesti käyttäneet taulukkoalue-menetelmää VBA-koodeissa löytääksemme Excelin viimeisen rivin, jolla on tietoja.

6. Nimetyn alueen käyttö viimeisen rivin etsimiseen, jossa on alueen tietoja.

Tätä menetelmää ei käytetä yleisesti Excelissä, mutta meidän mielestämme sinun pitäisi oppia se tietojesi kartuttamiseksi.

Jos tietokokonaisuudessasi on nimetty alue, voit käyttää tätä koodia. Katso seuraavaa kuvakaappausta. Siinä on nimetty alue.

📌 Askeleet

Avaa ensin VBA-editori.

Kirjoita sitten seuraava koodi:

 Sub nameRange_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.Range("Named_Range").Rows.Count + 1 MsgBox "viimeinen käytetty rivi: " & LastRow End Sub 

Huomautus : Lisäämme 1:n LastRow-arvoon, koska alueemme alkoi rivin 1 jälkeen.

Tallenna tiedosto ja paina sitten Alt+F8 avataksesi Makro-valintaikkunan. Valitse nameRange_method.

Napsauta sen jälkeen Suorita.

Kuten näet, onnistumme löytämään viimeisen rivin tiedot VBA:n avulla.

7. VBA:n CurrentRegion-toiminto Excelissä

Voit myös käyttää VBA:n CurrentRegion-menetelmää löytääksesi viimeksi käytetyn rivin Excelissä. Vaikka se on hankalaa, voit halutessasi käyttää sitä hyödyksesi.

📌 Askeleet

Avaa ensin VBA-editori.

Kirjoita sitten seuraava koodi:

 Sub CurrentRegion_method() Dim sht As Worksheet Dim LastRow As Long Set sht = ActiveSheet LastRow = sht.Range("B4").CurrentRegion.Rows.Count + 3 'lisää numeroita valintasi mukaan' MsgBox "Viimeksi käytetty rivi: " & LastRow End Sub 

Huomautus : Alueen pitäisi olla tietokokonaisuutesi ensimmäinen solu. Lisää rivejäsi numero valintasi mukaan. Tässä lisäsimme 3, koska tietokokonaisuutemme alkoi rivin 3 jälkeen.

Tallenna nyt tiedosto. Avaa sitten makrovalintaikkuna painamalla Alt+F8. Valitse sitten CurrentRegion_method

Napsauta sen jälkeen Suorita.

Kuten näet, olemme onnistuneesti löytäneet viimeisen rivin, jolla on tietoja, VBA-koodin avulla.

💬 Muistettavaa

Range.End toimii vain yhdellä rivillä tai sarakkeella. Jos tietokokonaisuutesi sisältää paljon tyhjiä soluja, on vaikeaa löytää viimeinen rivi, jolla on tietoja.

Joskus sinun on lisättävä joitakin arvoja metodeihisi, jotta koodi toimisi sujuvasti. Lisäsimme rivinumerot viimeisen solun löytämiseksi. Sinun on siis muistettava, mistä tietokokonaisuutesi alkoi.

Päätelmä

Lopuksi toivon, että tämä opetusohjelma on antanut sinulle hyödyllisen tiedon löytää viimeinen rivi, jossa on tietoja alueella käyttäen VBA: ta Excelissä. Suosittelemme, että opit ja soveltaisit kaikkia näitä ohjeita tietokokonaisuuteesi. Lataa harjoitustyökirja ja kokeile näitä itse. Voit myös vapaasti antaa palautetta kommenttiosassa. Arvokas palautteesi pitää meidät motivoituneina luomaan tällaisia opetusohjelmia.

Älä unohda tarkistaa verkkosivujamme Exceldemy.com erilaisiin Exceliin liittyviin ongelmiin ja ratkaisuihin.

Jatka uusien menetelmien oppimista ja jatka kasvamista!

Hugh West on erittäin kokenut Excel-kouluttaja ja analyytikko, jolla on yli 10 vuoden kokemus alalta. Hän on koulutukseltaan laskentatoimen ja rahoituksen kandidaatti sekä kauppatieteiden maisteri. Hughilla on intohimo opettamiseen, ja hän on kehittänyt ainutlaatuisen opetusmenetelmän, jota on helppo seurata ja ymmärtää. Hänen asiantuntemuksensa Excelistä on auttanut tuhansia opiskelijoita ja ammattilaisia ​​maailmanlaajuisesti parantamaan taitojaan ja menestymään urallaan. Blogissaan Hugh jakaa tietämyksensä maailman kanssa tarjoamalla ilmaisia ​​Excel-opetusohjelmia ja verkkokoulutusta auttaakseen yksilöitä ja yrityksiä saavuttamaan täyden potentiaalinsa.