Tartalomjegyzék
A VLOOKUP függvény az Excel legnépszerűbb keresési és hivatkozási funkciója. Ez egyben az egyik legtrükkösebb is, és a rettegett #N/A hibaüzenet gyakori látvány lehet.
Ez a cikk a 6 leggyakoribb okot vizsgálja meg, amiért a VLOOKUP nem működik.
Pontos egyezésre van szükséged
A VLOOKUP függvény utolsó argumentuma, az ún. range_lookup , megkérdezi, hogy hozzávetőleges vagy pontos egyezést szeretne-e.
A legtöbb esetben az emberek egy adott terméket, megrendelést, alkalmazottat vagy ügyfelet keresnek, és ezért pontos egyezést igényelnek. Ha egyedi értéket keresnek, a FALSE-t kell beírni a range_lookup érv.
Ez az argumentum opcionális, de ha üresen hagyja, akkor a TRUE értéket használja a rendszer. A TRUE érték az adatok növekvő sorrendbe rendezésétől függ.
Az alábbi képen egy VLOOKUP látható, amelynél a range_lookup argumentum kimaradt, és a hibás értéket adja vissza.
Megoldás
Ha egyedi értéket keres, az utolsó argumentumnak FALSE-t kell beírni. A fenti VLOOKUP-ot a következőképpen kell beírni =VLOOKUP(H3,B3:F11,2,FALSE)
.
A táblázat hivatkozásának zárolása
Lehet, hogy több VLOOKUP-ot szeretne használni, hogy különböző információkat adjon vissza egy rekordról. Ha azt tervezi, hogy a VLOOKUP-ot több cellába másolja, akkor le kell zárnia a táblázatot.
Az alábbi kép egy helytelenül beírt VLOOKUP-ot mutat. A rossz cellatartományokra hivatkozik a lookup_value és asztali tömb .
Megoldás
A táblázat, amelyet a VLOOKUP függvény az információk keresésére és visszaadására használ, az ún. table_array Erre feltétlenül hivatkozni kell a VLOOKUP másolásához.
Kattintson a képleten belüli hivatkozásokra, és nyomja meg az F4 billentyűt a billentyűzeten, hogy a hivatkozást relatívról abszolútra változtassa. A képletet a következőképpen kell beírni =VLOOKUP($H$3,$B$3:$F$11,4,FALSE)
.
Ebben a példában mind a lookup_value és table_array hivatkozások abszolút. Jellemzően lehet, hogy csak a table_array amit le kell zárni.
Egy oszlopot beszúrtak
Az oszlopindex száma, vagy col_index_num , a VLOOKUP függvény arra használja, hogy megadja, milyen információt adjon vissza egy rekordról.
Mivel ez indexszámként van megadva, nem túl tartós. Ha egy új oszlop kerül be a táblázatba, az megakadályozhatja a VLOOKUP működését. Az alábbi kép egy ilyen forgatókönyvet mutat.
A mennyiség a 3. oszlopban volt, de egy új oszlop beillesztése után a 4. oszlop lett. A VLOOKUP azonban nem frissült automatikusan.
Megoldás 1
Az egyik megoldás lehet a munkalap védelme, hogy a felhasználók ne tudjanak oszlopokat beszúrni. Ha a felhasználóknak erre szükségük van, akkor ez nem életképes megoldás.
Megoldás 2
Egy másik lehetőség az lenne, ha a MATCH függvényt beillesztenénk a col_index_num a VLOOKUP argumentuma.
A MATCH
függvény használható a kívánt oszlopszám megkeresésére és visszaadására. Ezáltal a col_index_num dinamikus, így a beillesztett oszlopok már nem befolyásolják a VLOOKUP-ot.
Az alábbi képlet beírható ebbe a példába a fent bemutatott probléma elkerülése érdekében.
Az asztal nagyobb lett
Ahogy a táblázat újabb sorokkal bővül, a VLOOKUP-ot frissíteni kell, hogy a táblázatba bekerüljenek ezek a további sorok. Az alábbi kép egy olyan VLOOKUP-ot mutat, amely nem ellenőrzi a teljes táblázatot a gyümölcsökre vonatkozóan.
Megoldás
Fontolja meg a tartomány táblázatként (Excel 2007+) vagy dinamikus tartománynévként való formázását. Ezek a technikák biztosítják, hogy a VLOOKUP függvény mindig a teljes táblázatot ellenőrizze.
Ha a tartományt táblázatként szeretné formázni, válassza ki a cellák azon tartományát, amelyet a táblázathoz használni szeretne. table_array és kattintson Home > Formátum táblázat formájában és válasszon ki egy stílust a galériából. Kattintson a Tervezés lapon a Table Tools (Táblázati eszközök) alatt, és változtassa meg a táblázat nevét a megadott mezőben.
Az alábbi VLOOKUP egy táblázatot mutat, amelynek neve FruitList használják.
A VLOOKUP nem tud balra nézni
A VLOOKUP függvény egyik korlátja, hogy nem tud balra nézni. A táblázat legbal oldali oszlopában néz lefelé, és a jobb oldali oszlopból ad vissza információt.
Megoldás
A megoldás erre az, hogy egyáltalán nem használjuk a VLOOKUP-ot. Az Excel INDEX és MATCH funkcióinak kombinációja a VLOOKUP általános alternatívája. Ez sokkal sokoldalúbb.
Az alábbi példa azt mutatja, hogy a keresett oszlop bal oldalán lévő információk visszaadására használják.
További információk az INDEX és a MATCH használatáról
A táblázata duplikátumokat tartalmaz
A VLOOKUP függvény csak egy rekordot adhat vissza. Az első olyan rekordot adja vissza, amely megfelel a keresett értéknek.
Ha a táblázat duplikátumokat tartalmaz, akkor a VLOOKUP nem felel meg a feladatnak.
Megoldás 1
Ha nem, akkor fontolja meg a duplikátumok eltávolítását. Ennek egy gyors módja, hogy kijelöli a táblázatot, majd a Eltávolítja a duplikátumokat gombot a Adatok tab.
Nézze meg az AbleBits Duplicate Remover-t egy teljesebb eszközért a duplikátumok kezeléséhez az Excel táblázatokban.
Megoldás 2
Oké, tehát a listának duplikátumokat kell tartalmaznia. Ebben az esetben nem egy VLOOKUP-ra van szüksége. Egy PivotTable tökéletes lenne egy érték kiválasztására és az eredmények listázására.
Az alábbi táblázat a megrendelések listája. Tegyük fel, hogy egy adott gyümölcs összes megrendelését szeretnénk visszaküldeni.
Egy PivotTable-t használtak, hogy a felhasználó kiválaszthassa a jelentés szűrőjéből a gyümölcsazonosítót, és megjelenik az összes rendelés listája.
Problémamentes VLOOKUP-ok
Ez a cikk bemutatta a megoldást a VLOOKUP funkció 6 leggyakoribb okára, amiért a VLOOKUP funkció nem működik. Ezekkel az információkkal felfegyverkezve kevesebb gondot okozhat a jövőben ez a fantasztikus Excel-funkció.
A szerzőről
Alan Murray informatikai oktató és a Computergaga alapítója, aki online képzést és a legújabb tippeket és trükköket kínál az Excel, a Word, a PowerPoint és a Project témakörökben.