Excel VBA keresési funkció
Az Excelben már sokszor használtuk a VLookup-ot. A Beszúrás funkcióban található, amely bármilyen kívánt érték beolvasására vagy leképezésére szolgál. Hasonlóképpen, a VBA-ben van egy Lookup alkalmazás, amely ugyanúgy működik, mint az Excel Vlookup. A VBA Lookup rugalmas adatszerkezettel rendelkezik, mivel felhasználható bármilyen érték feltérképezésére bármilyen asztali tömbből. Ez azt jelenti, ha alkalmazzuk az Excel Vlookup alkalmazást, akkor a szintaktikailag nem tudjuk a jobb oldali oszlop adatait a bal oldali oszlop adataival leképezni. Míg a VBA Lookupban nincs megfelelő struktúra a leképezéshez. Csak a VBA Lookup szintaxisát kell követnünk. Ha a szintaxis elégedett és megfelelõen bekeretezett, akkor az értékeket a táblázat jobb vagy bal oldaláról lehet letölteni.
A VBA keresési funkció szintaxisa:
Hol,
- Arg1 = Érték, amelyet keresünk.
- Arg2 = Az oszlopok vagy táblák tartománya, ahonnan keresni szeretnénk.
- Arg3 = Eredmény, mint logikai vagy vektor.
Hogyan lehet használni a keresési funkciót az Excel VBA-ban?
Megtanuljuk, hogyan kell használni az Excel keresési funkcióját a VBA kód használatával.
Itt letöltheti ezt a VBA keresési Excel sablont - VBA keresési Excel sablonVBA-keresés - 1. példa
A VBA keresési kód írására sokféleképpen van lehetőség. Ebben a példában a VBA-keresés egyszerű módját írjuk le. Ehhez az alább látható adatkészlettel rendelkezik. Ez a táblázat tartalmazza a versenyek számát és a versenyzők átlagos sebességét. Most ezeket az adatokat fogjuk felhasználni a VBA Lookup alkalmazásához az alábbi táblázatban az A8-B8 kék fejlécekkel. Ehhez kövesse az alábbi lépéseket:
1. lépés: Nyissa meg a modult a Beszúrás menü lapon, az alább látható módon.
2. lépés: Írja be a modulban az elvégzett munka alprocedúráját. Itt a VBA Lookup néven választottuk.
Kód:
Sub VBA_Lookup1 () Sub
3. lépés: Válassza ki a kimeneti cellát, ahol látnia kell a keresési értéket. Ebben a cellában a B9 érték szerepel, ahol megkeresjük az „Aniket” névre vonatkozó értéket, amely a keresési értékünk.
Kód:
Sub VBA_Lookup1 () Range ("B9") Érték End Sub
4. lépés: Most a Munkalap funkciót fogjuk használni, és az alább látható módon válasszuk ki a listába beépített Keresési funkciót.
Kód:
Al VBA_Lookup1 () tartomány ("B9"). Érték = WorksheetFunction.Lookup End Sub
5. lépés: Miután kiválasztottuk a Keresési funkciót, látni fogjuk az Arg1, Arg2 és Arg3 szintaxisát. Ehhez először felvesszük a Keresési értéktartományt, amely az A9 cella az Arg1 helyett.
Kód:
Sub VBA_Lookup1 () Range ("B9"). Value = WorksheetFunction.Lookup (Range ("A9"). Value, Sub Sub End
6. lépés: Az Arg2 esetében válassza ki az A2: A5 cellából a keresési tartományt.
Kód:
Al VBA_Lookup1 () tartomány ("B9"). Érték = WorksheetFunction.Lookup (Range ("A9"). Value, Range ("A2: A5"), End Sub
7. lépés: Végül válassza ki a keresési értéktartományt, amely B2-től B5-ig terjed az Arg3 helyett.
Kód:
Sub VBA_Lookup1 () Range ("B9"). Value = WorksheetFunction.Lookup (Range ("A9"). Value, Range ("A2: A5"), Range ("B2: B5")) End Sub End
8. lépés: Futtassa a kódot az F5 billentyű megnyomásával vagy a menüszalag alatt található Play gombra kattintással. Látni fogjuk, hogy a keresés szerint az „Aniket” névvel végzett versenyek száma 7.
VBA-keresés - 2. példa
A keresési funkció alkalmazásának másik módja az Excel VBA. Ehhez ugyanazokat az adatokat fogjuk használni, mint amelyeket az 1. példában láttunk. Ehhez kövesse az alábbi lépéseket:
1. lépés: Írja be az alfolyamatot a VBA kereséshez, az alább látható módon.
Kód:
Sub VBA_Lookup2 () Sub
2. lépés: Adjon meg egy változót karakterláncként, amelyet a Név oszlop leképezéséhez használnak.
Kód:
Sub VBA_Lookup2 () Eltávolítás neve karakterlánc végként Sub
3. lépés: A definiált Név változóban a Vlookup alkalmazást alkalmazzuk, az alább látható módon.
Kód:
VBA_Lookup2 () A tompító név karakterláncnévként = Application.VLookup (Sub sub vége)
4. lépés: Tegyük fel, hogy a keresési értékünket az asztalból „Ashwani” -nek nevezzük.
Kód:
Sub VBA_Lookup2 () Eltávolítás neve karakterláncnévként = Alkalmazás.VLookup ("Ashwani", End Sub
5. lépés: És a tartomány A1 és C6 között van az 1. laphoz.
Kód:
VBA_Lookup2 () Alsó név sztringnévként = Alkalmazás.VLookup ("Ashwani", Sheet1.Range ("A1: C6"), Sub Sub vége
6. lépés: Ha itt szeretnénk látni az „Ashwani” versenyző átlagos sebességét, akkor a cellát meg kell jelölnünk a Lookup szintaxisban, amely a harmadik helyen van.
Kód:
VBA_Lookup2 () Alsó név karakterláncnévként = Alkalmazás.VLookup ("Ashwani", 1. lap: Reange ("A1: C6"), 3) Sub vége
7. lépés: Most az „Ashwani” versenyző átlagos sebességének megtekintéséhez mind az MsgBox, mind a Debug Print használható. A Debug Print használata sokkal jobb, mint az MsgBox. Tehát rendeljen hibakeresési nyomtatást egy meghatározott változónévvel.
Kód:
Sub VBA_Lookup2 () Eltávolítás neve karakterláncnévként = Application.VLookup ("Ashwani", Sheet1.Range ("A1: C6"), 3) Debug.Print Name End Sub Sub
8. lépés: Most nyissa meg az azonnali ablakot, amely ott van a Nézet menü lapon, hogy megjelenítse a kimenetet.
9. lépés: Fordítsa le a kódot, és futtassa. Látni fogjuk, hogy a Lookup Ashwani sebességével térképezte le, és az azonnali ablakba behúzta 86-ra .
Kód:
Sub VBA_Lookup2 () Eltávolítás neve karakterláncnévként = Application.VLookup ("Ashwani", Sheet1.Range ("A1: C6"), 3) Debug.Print Name End Sub Sub
VBA-keresés - 3. példa
Az Excel VBA-ban a keresési funkció használatához kövesse az alábbi lépéseket:
1. lépés: Írja be az alfolyamatot a VBA kereséshez, az alább látható módon.
Kód:
Sub VBA_Lookup3 () Sub
2. lépés: Nyilatkozzon egy változót a név karakterláncként az alább látható módon.
Kód:
Sub VBA_Lookup3 () Az elsötétítés neve karakterlánc végként al
3. lépés: Most rendelje el a keresni kívánt nevet a Név meghatározott változóhoz, az alább látható módon.
Kód:
Sub VBA_Lookup3 () A tompítás neve mint karakterlánc neve = "Deepinder" Vége al
4. lépés: Most használjon bármilyen szót a keresés meghatározásához és használatához, mondván: LUp . És ebben használja a Munkalap-funkciót a Vlookup-szal, az alább látható módon.
Kód:
Sub VBA_Lookup3 () tompított név mint karakterlánc neve = "Deepinder" LUp = Application.WorksheetFunction.VLookup (MsgBox "Átlagos sebesség:" & LUp End Sub
5. lépés: Most ugyanazt a Vlookup szintaxist használja, mint az Excelben. Az Arg1-ben tegye a Név változót, majd válassza ki a tartomány mátrixát és keresse meg azt az értéket, amelyet meg akarunk szerezni. Itt az oszlop 3, az alább látható módon.
Kód:
VBA_Lookup3 () tompított név mint karakterlánc neve = "Deepinder" LUp = Application.WorksheetFunction.VLookup (név, Sheet1.Range ("A2: C6", 3, False) MsgBox "Átlagos sebesség:" & LUp End Sub
6. lépés: Most használja az MsgBox-ot a kimenet megtekintéséhez.
Kód:
VBA_Lookup3 () tompított név mint karakterlánc neve = "Deepinder" LUp = Application.WorksheetFunction.VLookup (név, Sheet1.Range ("A2: C6", 3, False) MsgBox "Átlagos sebesség:" & LUp End Sub
7. lépés: Fordítsa le és futtassa a kódot. Látni fogjuk, hogy a „Deepinder” névnél az átlagos sebesség 88. lesz. Míg ugyanaz az érték a táblázatban a Deepinder névre vonatkozik.
Kód:
Sub VBA_Lookup3 () A tompított név mint karakterlánc neve = "Deepinder" LUp = Application.WorksheetFunction.VLookup (név, Sheet1.Range ("A2: C6", 3, False) MsgBox "Átlagos sebesség:" & LUp End Sub
Az Excel VBA keresési funkció előnyei
- Ugyanolyan egyszerű használni és megvalósítani, mint a szokásos Excel Vlookup képletek alkalmazása az Excel alkalmazásban.
- Bármely fajta tartományt és mátrixot használhatunk a VBA keresésben.
- Nagyon kevés vagy egyáltalán nincs korlátozás a VBA Lookup alkalmazása során.
Dolgok, amikre emlékezni kell
- Bármely helyzetben használhatjuk a Lookupot a Vlookup helyett.
- A keresési vektor és az eredményvektor tartományának azonosnak kell lennie.
- Az alkalmazás elkészítése után mentse el a fájlt Makro engedélyezése formátumban a kód megtartása érdekében.
- Nincs kötelező követelmény, hogy az eredmény oszlopot minden alkalommal a keresési érték jobb oldalán helyezze el.
Ajánlott cikkek
Ez egy útmutató a VBA keresési funkcióhoz. Itt tárgyaljuk, hogyan lehet használni az Excel VBA Keresési funkcióját, a gyakorlati példákkal és a letölthető Excel sablonnal együtt. Megnézheti más javasolt cikkeinket -
- VBA gyűjtemény (példák)
- VBA IF nyilatkozatok | Excel sablonok
- Hogyan kell használni az Excel VBA rendezési funkciót?
- VBA Míg a hurok (példák Excel sablonnal)
- VBA Environ