Tartalomjegyzék
Míg a munka során Microsoft Excel , néha meg kell találnunk a megfelelő értéket egy tartományban. Ezt könnyen megtehetjük az excel függvényekkel. A VBA-ban vannak függvények, amelyeket használhatunk, de egyik sem egyenlő a MATCH Ebben a cikkben megtanuljuk, hogyan lehet egy tartományban lévő értéket egyezni a Excel VBA .
Gyakorlati munkafüzet letöltése
Letöltheti a munkafüzetet, és gyakorolhat velük.
VBA Match érték Range.xlsm tartományban.xlsmBevezetés az Excel VBA Match funkcióba
A Match funkció az Excel VBA-ban egy hasznos felépített keresési funkció, amely, mint a VLOOKUP , HLOOKUP , és a INDEX függvények, visszaadja a tömbökben vagy egy adatbázisban kapott keresési értékek azonos vagy hasonló egyezésének helyét. Ez a függvény egy munkalapfüggvény, amelyet a program használ. Mivel ez egy munkalapfüggvény, a Match függvény paraméterei hasonlóak a munkalapfüggvény paramétereihez.
3 példa az Excel VBA-ra a tartományban lévő értékek egyeztetésére
1. Az Excel VBA Match funkcióval az Excel tartományban lévő értékek egyeztetése
Használat az Excel VBA Match funkció , a tartományon belüli egyezés értékének megtalálásához a következő adathalmazt fogjuk használni. Az adathalmaz néhány diák nevét tartalmazza az oszlopban. C , egy adott tárgyra vonatkozó jegyeiket az oszlopban D , és az egyes tanulók sorszáma az oszlopban B Most tegyük fel, hogy meg akarjuk találni a cellában lévő egyezés pozícióját. G5 egy adott jelölés, és az a jelölés, amelynek meg akarunk felelni, a cellában van. F5 .
Mutassuk be az eljárást egy tartományban lévő egyező értékek keresésére az excel VBA Match függvény használatával. .
LÉPÉSEK:
- Először menjen a Fejlesztő lapot a szalagról.
- Másodszor, kattintson a Visual Basic a Visual Basic szerkesztő , ahová a kódot írjuk. Vagy nyomjuk meg a Alt + 11 a Visual Basic szerkesztő .
- Egy másik módja a nyitásnak Visual Basic szerkesztő csak az, hogy jobb gombbal kattintva a munkalapon, és kattintson a Kód megtekintése .
- Ez megnyitja a Visual Basic szerkesztő Most írja oda a kódot.
VBA-kód:
Sub example1_match() Range("G5").Value = WorksheetFunction.Match(Range("F5").Value, Range("D5:D10"), 0) End Sub
- Ezután a kód futtatásához nyomja meg a F5 billentyűvel a billentyűzeten, vagy kattintson a Rub Sub gomb.
- Végül láthatjuk, hogy az egyezés a következő pozícióban található meg 5 .
🔎 Hogyan működik a VBA-kód?
Sub example1_match()
: Ez azt jelenti, hogy a makró nevének megadásával definiálunk egy alprocedúrát.Range("G5").Value
: Azt szeretnénk, hogy a kimenetet a cellában G5 .WorksheetFunction
: Ennek a kódnak a használatával hozzáférhetünk a VBA függvényekhez.
Match(Range("F5").Value, Range("D5:D10"), 0)
: Itt használjuk a a Match funkció Mivel az értéket a VBA-ban a cellából akarjuk kivenni. F5 és megtudja a pozíciót a tartományban D5:D10 .End Sub
: Ez azt jelenti, hogy befejezzük az eljárást.
További információ: Excel VBA az oszlopban lévő karakterlánc megfeleltetésére (5 példa)
2. Az Excel VBA használata egy másik munkalapból származó értékek egyeztetéséhez
Egy másik munkalapból is találhatunk egyezéseket a tartományban, a következővel a VBA Match funkció a oldalon. Excel Tegyük fel, hogy van egy adatkészletünk egy " Adatok ", és az eredményt a lap nevén " Eredmény ". És ugyanazt az adatkészletet használjuk. Most pedig kövessük az ehhez szükséges lépéseket.
LÉPÉSEK:
- Az elején, ugyanúgy, mint a korábbi példában, menjünk a Fejlesztő lapot a szalagban.
- Ezután kattintson a Visual Basic vagy nyomja meg a Alt + F11 a Visual Basic szerkesztő .
- Ehelyett, hogy megnyissa a Visual Basic szerkesztő , egyszerűen kattintson a jobb gombbal a lapra, és válassza a Kód megtekintése .
- Most írja le a VBA kódot.
VBA-kód:
Sub example2_match() Sheets("Result").Range("C5").Value = WorksheetFunction.Match(Sheets("Result").Range("C5").Value, Sheets("Data").Range("D5:D10"), 0) End Sub
- Ezután futtassa a kódot a F5 billentyűvel vagy a Run Sub gomb.
- És, az eredmény megtalálható a " Eredmény " lap.
Bővebben: Hogyan illesszük össze az adatokat az Excelben 2 munkalapból származó adatokkal?
Hasonló olvasmányok
- Az összes egyezés összege a VLOOKUP segítségével az Excelben (3 egyszerű módja)
- Hogyan lehet megtalálni az esetérzékeny egyezést az Excelben ( 6 képlet)
- Hogyan illesszük a neveket az Excelben, ahol a helyesírás eltér (8 módszer)
3. Excel VBA hurkok a tartományban lévő illeszkedő értékek megszerzéséhez
Tegyük fel, hogy több jelet akarunk az értéknek megfeleltetni, ehhez a VBA ciklusokat fogjuk használni. Ugyanazt az adatkészletet használjuk, mint korábban. Most azt akarjuk, hogy az egyezés pozíciója az oszlopban legyen G , és az egyezést kereső jelek az oszlopban vannak F Lássuk a lépcsőfokokat.
LÉPÉSEK:
- Először is, a szalagról menjen a Fejlesztő tab.
- Másodszor, a Visual Basic szerkesztő , kattintson a Visual Basic vagy nyomja meg a Alt + F11 .
- Vagy egyszerűen kattintson a jobb gombbal a lapra, és válassza a Kód megtekintése .
- Ez megnyitja a Visual Basic szerkesztő .
- Most írja be a kódot.
VBA-kód:
Sub example3_match() Dim i As Integer For i = 5 To 8 Cells(i, 7).Value = WorksheetFunction.Match(Cells(i, 6).Value, Range("D5:D10"), 0) Next i End Sub
- Ezt követően a F5 billentyűvel vagy a Run Sub gombra kattintva a kódot futtatja.
- Az eredményt pedig az alábbi oszlopban láthatja G .
🔎 Hogyan működik a VBA-kód?
For i = 5-8
: Ez azt jelenti, hogy azt akarjuk, hogy a ciklus a következő sorral kezdődjön 5 és a következő sorral végződik 8 .Cells(i, 7).Value
: Ez elmenti az eredményül kapott helyek értékét minden egyes sorban a 5 a címre. 8 sorok az oszlopban G ami az oszlop száma 7 .Match(Cells(i, 6).Value, Range("D5:D10"), 0)
: A cellákat a Match függvény (i, 6). értékek keresése minden egyes Lookup értékre, amelyet a sorokban találtak. 5 a oldalon keresztül 8 a 6. oszlopban. Ezután a tömbben keresett D5:D10 egy excel táblázatban, ahol az adatok rendelkezésre állnak.
Bővebben: Az Excel megtalálja az egyező értékeket két oszlopban
Amit szem előtt kell tartani
- Ha az egyezés típusa hiányzik vagy nincs megadva, akkor azt feltételezzük, hogy az a 1 .
- Ha nem talál egyezést, a kapcsolódó excel mező üres lesz.
- A keresési érték lehet numerikus, karakteres vagy logikai adat, vagy egy cellahivatkozás egy mennyiségre, szövegre vagy logikai jelentőségre.
Következtetés
A fenti módszerek segítenek Önnek abban, hogy az Excel VBA-ban egy tartományban lévő értékeket egyeztesse. Remélem, hogy ez segít Önnek! Ha bármilyen kérdése, javaslata vagy visszajelzése van, kérjük, ossza meg velünk a megjegyzés rovatban. Vagy vethet egy pillantást a többi cikkünkre a ExcelWIKI.com blog!