Indexmérkőzés a VBA-ban
Az INDEX & MATCH függvény a VBA kombinációban az Excel VLOOKUP függvényének alternatívája. A VBA-ban nincs olyan luxusunk, hogy közvetlenül használjuk az INDEX & MATCH függvényt, mert ez a két funkció nem része a VBA beépített funkcióinak. Azonban továbbra is felhasználhatjuk őket a munkalap függvényosztály részeként.

Hogyan kell használni az Index egyezést a VBA-ban? (Lépésről lépésre)
Nézze meg például az alábbi adatokat.

A fenti adatokban a keresési érték az osztály neve, és ezen osztály neve alapján ki kell vonnunk a fizetés összegét.
De a probléma itt az eredmény oszlop az elsőben van, a keresési érték oszlop pedig az eredmény oszlopban. Ebben az esetben a VLOOKUP nem tudja lekérni a fizetési összeget, mert a VLOOKUP csak jobbról balra működik, nem balról jobbra.
Ezekben az esetekben a VBA INDEX & MATCH függvény kombinációs képletét kell használnunk. Végezzük el azt a feladatot, hogy megtaláljuk az egyes részlegek bérösszegét a VBA kódban.
1. lépés: Indítsa el a napsütést.
2. lépés: Nyújtsa be a VBA Integer változót.
Kód:
INDEX_MATCH_Példa1 () Dim k mint egész vége Sub

3. lépés: Most nyissa meg a Next Loop elemet a VBA-ban.
Kód:
INDEX_MATCH_Példa1 () Dim k mint egész szám k = 2-től 5-ig Következő k Vége Sub

4. lépés: A VBA hurokban hajtsa végre a képletet. Az 5 -én oszlop, meg kell alkalmazni a képlet, így a kód SEJTEK (k, 5) .Value =
Kód:
INDEX_MATCH_Példa1 () Dim k mint egész szám k = 2-5 celláig (k, 5). Érték = Következő k End Sub

5. lépés: Ebben a cellában alkalmaznunk kell a VBA INDEX & MATCH képletet. Mint mondtam, ezeket a függvényeket munkalapfunkcióként kell használnunk a VBA osztályban, ezért nyissa meg a munkalapfüggvényosztályt.
Kód:
INDEX_MATCH_Példa1 () Dim k k egész szám k = 2-5 celláig (k, 5). Érték = WorksheetFunction. Következő k End Sub

6. lépés: A munkalap funkcióosztály megadása után láthatjuk az összes rendelkezésre álló munkalapfüggvényt, ezért válassza az INDEX funkciót.
Kód:
INDEX_MATCH_Példa1 () Dim k ként egész szám k = 2-5 celláig (k, 5). Érték = WorksheetFunction.Index (Következő k End Sub

7. lépés: A VBA-ban a munkalapfüggvény használata közben teljesen biztosnak kell lennie a képlet argumentumaiban. Az első argumentum a tömb, azaz melyik oszlopból kell az eredmény. Ebben az esetben az A2 és A5 közötti eredményre van szükségünk.
Kód:
INDEX_MATCH_Example1 () Dim k k egész szám k = 2-5 celláig (k, 5). Érték = WorksheetFunction.Index (tartomány ("A2: A5"), Következő k End Sub

8. lépés: Ezután következik, hogy melyik sorszámból van szükségünk az eredményre. Amint azt a korábbi példában láthattuk, nem adhatjuk meg kézzel a sorszámot minden alkalommal. Tehát használja a MATCH funkciót.
A MATCH függvény ismételt használatához meg kell nyitnunk a Worksheet Function osztályt.
Kód:
INDEX_MATCH_Példa1 () Dim k k egész szám k = 2-5 celláig (k, 5). Érték = WorksheetFunction.Index (tartomány ("A2: A5"), WorksheetFunction.Match (következő k End Sub

9. lépés: A MATCH függvények első argumentuma a LOOKUP érték; itt a keresési értékünk a részlegek neve; ott van a sejtekben (2, 4).
Mivel minden alkalommal, amikor a sorszámnak megváltoznia kell, megadhatjuk a „k” változót a 2. kézi sor helyett. Cellák (k, 4).
Kód:
INDEX_MATCH_Példa1 () Dim k k egész szám k = 2-5 celláig (k, 5). Érték = WorksheetFunction.Index (tartomány ("A2: A5"), WorksheetFunction.Match (cellák (k, 5). Érték, következő k Vége al

10. lépés: Ezután meg kell említenünk a részleg értéktartományát, azaz a Tartományt („B2: B5”).
Kód:
INDEX_MATCH_Példa1 () Dim k k egész szám k = 2-5 celláig (k, 5). Érték = WorksheetFunction.Index (tartomány ("A2: A5"), WorksheetFunction.Match (cellák (k, 5). Érték, tartomány) ("B2: B5"),
Következő k
End Sub
11. lépés: Ezután tegye az argumentumot 0-ra, mert pontos egyezésre van szükségünk, és zárjuk le a zárójeleket.
Kód:
INDEX_MATCH_Példa1 () Dim k k egész szám k = 2-5 celláig (k, 5). Érték = WorksheetFunction.Index (tartomány ("A2: A5"), WorksheetFunction.Match (cellák (k, 4). Érték, tartomány) ("B2: B5"), 0))
Következő k
End Sub
Ok, elkészültünk a kódoló résszel. Futtassuk a kódot, hogy az eredmény az 5. oszlopban legyen.

Szóval, megvan az eredmény.
Ezt a képletet a VLOOKUP függvény alternatívájaként használhatjuk.