VBA XLUP | Kuidas kasutada VBA XLUP-i Excelis? (koos näidetega)
Exceli VBA XLUP
Üks asi, mida peate VBA-koodi kirjutamise ajal meeles pidama, on see, mida teete tavalise töölehega ja saate sama asja ka VBA-s kopeerida. Üks selline märksõna VBA kodeerimisel on “XLUP”, selles artiklis näitame teile, mis see märksõna VBA kodeeringus on ja kuidas seda kodeerimisel kasutada.
Kuidas kasutada VBA XLUP-i kodeerimisel?
Järgnevad on Exceli VBA XLUP näited.
Selle VBA XLUP Exceli malli saate alla laadida siit - VBA XLUP Exceli mallNäide # 1 - teisaldage lahtrid lahtrite kustutatud asendisse
Näiteks vaadake allpool olevate andmete stsenaariumi, kus peate need värviliste lahtrite andmed kustutama ja allpool olevate ridade andmed ülaltoodud andmeteni ülespoole.
Üks viis selle töölehel kustutamiseks on valida need lahtrid, kust saame lihtsalt kogu rea ise kustutada. Kuid siin on olukorrad vähe keerukad, kuna mul on tabelis 1 värvilised lahtrid, kui kustutame kogu rea, kustutatakse ka tabeli 2 read, kuid me ei taha, et see juhtuks, vaid peame kustutama ainult värvilised read ja lahtrid peaksid liikuma kustutatud lahtrite positsiooni ülespoole.
Kõigepealt valige värvilised lahtrid ja vajutage klahvikombinatsiooni Ctrl + Miinus sümbol (-), et avada suvand „Kustuta“.
Otseteeklahv suvandi Kustuta avamiseks
"Kustuta" valikute aknas on meil neli võimalust, saame valida toimingu vastavalt meie nõudele. Kuna peame nende kustutatud rakkude positsiooni jaoks oma rakud ülespoole viima, valige „Shift Cell Up“.
Meil on tabeli 2 rida muutmata.
See VBA-s toiming nõuab VBA-s sarnaste toimingute tegemiseks atribuudi “XLUP” kasutamist. Nüüd tulge VBA redaktori aknasse ja käivitage oma makro nimi.
Kood:
Alam XLUP_Example () Lõpeta alam
Esmalt sisestage lahter RANGE, et see toiming kaasataks. Selles toimingus on esimesed lahtrid, mis kustutatakse ja liigutatakse ülespoole, lahtrid “A5: B5”.
Kood:
Alam XLUP_Example () vahemik ("A5: B5") Lõpp alam
Selle lahtrivahemiku jaoks valige meetod „Kustuta“.
Kood:
Alam XLUP_Example () vahemik ("A5: B5"). Kustuta alam alam
Nagu näete meetodi „Kustuta“ puhul, on meil üks valikuline argument [Shift], selle argumendi jaoks peame sisestama argumendi „XLUP”.
Kood:
Alam XLUP_Example () vahemik ("A5: B5"). Kustuta nihe: = xlUp Lõpp alam
Nüüd saate tulemuse nägemiseks seda koodi käitada käsitsi või otseteeklahvi F5 kaudu.
Nagu näete tabelist 1, on meil rida number 6 viidud 5. reale ja teisest küljest on tabelis 2 rida (värviline) muutmata, nii et valiku „VBA XLUP” abil saame selle toimingu teha.
Näide # 2 - leidke viimati kasutatud rida XLUP-i abil
Kujutage ette olukorda, kus viibite lahtris A20 (vaadake pilti allpool) ja teie viimati kasutatud lahter on A14.
Nüüd, kui soovite valida viimati kasutatud lahtri (A14). kuidas saate teha kiirklahvi abil ???
Praegusest positsioonist viimati kasutatud lahtrisse liikumiseks kasutaksime klahve Ctrl + Nool üles.
Kiirklahv viimati kasutatud lahtrisse liikumiseks
Niisiis valis praegusest lahtrist Ctrl + nool ülespoole viimati kasutatud lahtri. Samamoodi kasutame VBA kodeerimisel sama toimimiseks END (XLUP) .
Nüüd tulge tagasi VBA kodeerimisakna juurde.
Selles aknas täidame ülesande leida töölehelt viimati kasutatud rida. Looge VBA aknas uus alamprotseduur.
Kood:
Alam XLUP_Example1 () Lõpeta alam
Viimati kasutatud rea numbri salvestamiseks. määratlege muutuja VBA LONG andmetüübina.
Kood:
Alam XLUP_Example1 () Dim Last_Row_Number As Long End Sub
Nüüd määrame selle muutuja jaoks viimati kasutatud rea numbri.
Kood:
Alam XLUP_Example1 () Dim Last_Row_Number As Long Last_Row_Number = Lõpeta alam
Nüüd kasutage objekti RANGE ja avage see objekt.
Kood:
Alam XLUP_Example1 () Dim Viimane_Rea_number nii pikk Last_Row_Number = Vahemik (Lõpp-Al
Mainige nüüd objekti RANGE aktiivset lahtrit (A20) .
Kood:
Alam XLUP_Example1 () Dim Last_Row_Number As Long Range ("A14"). Valige Last_Row_Number = Range ("A20") End Sub
Nüüd avage tarnitud vahemiku lahtrile omadus END.
Kood:
Alam XLUP_Example1 () Dim Last_Row_Number nii pika vahemikuna ("A14"). Valige Last_Row_Number = vahemik ("A20"). End (End Sub
Nagu ülal näete, peame nooleklahvidega valikud nagu „xlDown”, „xlToLeft”, „xlToRight”, „xlUp”. Kuna me liigume lahtrist A14 üles, valige variant „VBA XLUP”.
Kood:
Alam XLUP_Example1 () Dim Last_Row_Number As Long Range ("A14"). Valige Last_Row_Number = Range ("A20"). End (xlUp) End Sub
Pärast A14 lahtrist üles liikumist peame mainima, mida me peame tegema, kuna vajame viimati kasutatud rea numbrit, mida ma kasutan vara ROW.
Kood:
Alam XLUP_Example1 () Dim Last_Row_Number As Long Range ("A14"). Valige Last_Row_Number = Range ("A20"). End (xlUp). Rida End Sub
Nüüd määrake sõnumikasti muutuja "Last_Row_Number" väärtus .
Kood:
Sub XLUP_Example1 () Dim Last_Row_Number As Long Range ("A14"). Valige Last_Row_Number = Range ("A20"). End (xlUp). Rida MsgBox Last_Row_Number End Sub
Nüüd saate tulemuse nägemiseks käivitada selle koodi käsitsi või otseteeklahvi F5 kaudu.
Niisiis on sõnumikast, kus viimati kasutatud rea number on 14, seega on meie viimane kasutatud rea number lahter A14.
Sel juhul, kuna andmed on väga väikesed, alustasime A20 lahtrist, kuid kui andmed on suured, ei saa me öelda, millist lahtrit kõigepealt arvesse võtta, peame sellistel juhtudel kasutama teist tehnikat.
Peame kasutama vara CELLS, allpool on toodud näide samast.
Kood:
Alam XLUP_Example2 () Dim Last_Row_Number As Long Last_Row_Number = Lahtrid (Read.Count, 1) .End (xlUp) .Rida MsgBox Last_Row_Number End Sub
Nüüd saate tulemuse nägemiseks käivitada selle koodi käsitsi või otseteeklahvi F5 kaudu.
Objekti RANGE asemel olen kasutanud omadust CELLS. Lubage mul seda teile üksikasjalikult selgitada.
ROW.COUNT loeb see, mitu rida veerus 1 on. Mida see teeb, on see, et juhusliku lahtriaadressi asemel võetakse arvesse töölehe viimast lahtrit, ülaltoodud juhul oleme juhusliku lahtrina kasutanud A14 aadress.
VBA XLUPi kohta tuleb meeles pidada
- XLUP on VBA-koodis kasutatav sõna, et kopeerida Excelis klahvi „Nool üles“ toimingut.
- VBA XLUP-i kasutatakse liikumiseks aktiivsetest lahtritest ülaltoodud lahtritesse või viimati kasutatud lahtritesse.
- XLUP-i kasutatakse VBA-s tavaliselt koos omadusega END.