Efnisyfirlit
Er VLOOKUP þín að draga röng gögn eða þú getur alls ekki fengið það til að virka? Þessi kennsla sýnir hvernig þú getur fljótt lagað algengar VLOOKUP villur og sigrast á helstu takmörkunum hennar.
Í nokkrum fyrri greinum könnuðum við mismunandi þætti Excel VLOOKUP aðgerðarinnar. Ef þú hefur fylgst vel með okkur ættirðu nú að vera sérfræðingur á þessu sviði :)
Það er hins vegar ekki að ástæðulausu að margir Excel sérfræðingar telja VLOOKUP vera eina flóknustu Excel aðgerðina. Það hefur fullt af takmörkunum, sem eru uppspretta ýmissa vandamála og villna.
Í þessari grein finnur þú einfaldar skýringar á helstu orsökum VLOOKUP villna eins og #N/A, #NAME og #VALUE, svo og lausnir þeirra og lagfæringar. Við byrjum á augljósustu ástæðunum fyrir því að VLOOKUP virkar ekki, svo það gæti verið góð hugmynd að kíkja á eftirfarandi bilanaleitarskref í röð.
Legað #N/A villu í VLOOKUP
Í VLOOKUP formúlum birtast #N/A villuboðin (sem þýðir "ekki tiltækt") þegar Excel finnur ekki uppflettingargildi. Það geta verið nokkrar ástæður fyrir því að það gæti gerst.
1. Uppflettingargildið er rangt stafsett
Það er alltaf gott að athuga það augljósasta fyrst: ) Prentvillur verða oft þegar unnið er með mjög stór gagnasöfn sem samanstanda af þúsundum lína, eða þegar uppflettingargildi er slegið inn beint í formúluna.
2.VLOOKUP getur ekki valið töflufylki í öðru vinnublaði (þ.e. þegar þú auðkennir svið í uppflettiblaðinu birtist ekkert í töflufylki röksemdinni í formúlunni eða í samsvarandi reit formúlunnar Wizard), þá eru blöðin tvö líklega opin í aðskildum tilfellum af Excel og geta ekki átt samskipti sín á milli. Fyrir frekari upplýsingar, vinsamlegast sjá Hvernig á að ákvarða hvaða Excel skrár eru í hvaða tilviki. Til að laga þetta skaltu einfaldlega loka öllum Excel gluggum og opna síðan blöðin/vinnubækurnar aftur í sama tilviki (sjálfgefin hegðun). Hvernig á að Vlookup án villna í Excel
Ef þú vilt ekki hræða notendur þína með stöðluðum Excel villumerkingum, þú getur sýnt þinn eigin notendavæna texta í staðinn eða skilað auðu reit ef ekkert finnst. Þetta er hægt að gera með því að nota VLOOKUP með IFERROR eða IFNA aðgerð.
Fanga allar villur
Í Excel 2007 og síðar geturðu notað IFERROR aðgerðina til að athuga VLOOKUP formúlu fyrir villur og skila eigin texta (eða tómur strengur) ef einhver villa greinist.
Til dæmis:
=IFERROR(VLOOKUP(E1, A2:B10, 2, FALSE), "Oops, something went wrong")
Í Excel 2003 og eldri geturðu notaðu IF ISERROR formúluna í sama tilgangi:
=IF(ISERROR(VLOOKUP(E1, A2:B10, 2, FALSE)), "Oops, something went wrong", VLOOKUP(E1, A2:B10, 2, FALSE))
Nánari upplýsingar er að finna í Notkun IFERROR með VLOOKUP í Excel.
Höndla #N/A villur
Til að fanga aðeins #N/A villur sem hunsa allar aðrar villugerðir skaltu nota IFNA aðgerðina (í Excel 2013 oghærri) eða IF ISNA formúlu (í öllum útgáfum).
Til dæmis:
=IFNA(VLOOKUP(E1, A2:B10, 2, FALSE), "Oops, no match is found. Please try again!")
=IF(ISNA(VLOOKUP(E1, A2:B10, 2, FALSE)), "Oops, no match is found. Please try again!", VLOOKUP(E1, A2:B10, 2, FALSE))
Það er allt í dag. Vonandi mun þessi kennsla hjálpa þér að losna við VLOOKUP villur og láta formúlurnar þínar virka eins og þú vilt.
Hvernig á að VLOOKUP í Excel - kennslumyndband
#N/A í áætluðum samsvörun VLOOKUPEf formúlan þín flettir upp næst samsvörun, ( range_lookup frumbreyta stillt á TRUE eða sleppt), getur #N/A villa birst í tveimur tilvikum :
- Upplitsgildið er minna en minnsta gildið í uppflettifylki.
- Upplitsdálkurinn er ekki flokkaður í hækkandi röð.
3 . #N/A í nákvæmri samsvörun VLOOKUP
Ef þú ert að leita að nákvæmri samsvörun ( range_lookup frumbreyta stillt á FALSE), kemur #N/A villa þegar gildi nákvæmlega jafnt og uppflettingunni gildi finnst ekki. Fyrir frekari upplýsingar, sjá VLOOKUP nákvæm samsvörun vs áætluð samsvörun.
4. Uppflettisdálkurinn er ekki dálkurinn lengst til vinstri í töflufylkingunni
Ein mikilvægasta takmörkun Excel VLOOKUP er að hann getur ekki horft til vinstri. Þar af leiðandi ætti uppfletti dálkur alltaf að vera lengst til vinstri í töflufylkingunni. Í reynd gleymum við þessu oft og fáum #N/A villur.
Lausn : Ef það er ekki hægt að endurskipuleggja gögnin þín svo að uppflettisdálkurinn sé dálkurinn lengst til vinstri geturðu notað INDEX og MATCH aðgerðirnar saman sem valkost við VLOOKUP. Hér er formúludæmi: INDEX MATCH formúla til að fletta upp gildum til vinstri.
5. Tölur eru sniðnar sem texti
Önnur algeng heimild #N/A villur í VLOOKUP formúlum eru tölur sem eru sniðnar sem texti, annað hvort í aðal- eða uppflettitöflu.
Þetta venjulegaá sér stað þegar þú flytur inn gögn úr utanaðkomandi gagnagrunni eða ef þú hefur slegið inn fallstuld á undan tölu til að sýna fremstu núll.
Hér eru augljósustu vísbendingar um tölur sem eru sniðnar sem texti:
Lausn: Veldu allar erfiðu tölurnar, smelltu á villutáknið og veldu Breyta í númer í samhengisvalmyndinni. Fyrir frekari upplýsingar, vinsamlegast sjá Hvernig á að breyta texta í tölu í Excel.
6. Framandi eða aftan rými
Þetta er síst augljós orsök VLOOKUP #N/A villunnar vegna þess að mannsauga getur varla komið auga á þessi auka rými, sérstaklega þegar unnið er með stór gagnasöfn þar sem flestar færslurnar eru fyrir neðan fletið .
Lausn 1: Aukabil í uppflettigildinu
Til að tryggja rétta vinnu VLOOKUP formúlunnar skaltu vefja uppflettingargildið í TRIM fallinu:
=VLOOKUP(TRIM(E1), A2:C10, 2, FALSE)
Lausn 2: Aukabil í uppflettisdálki
Ef aukabil koma fyrir í uppflettisdálki, þá er engin auðveld leið til að forðast #N/A villur í VLOOKUP. Í staðinn geturðu notað blöndu af INDEX, MATCH og TRIM aðgerðum sem fylkisformúlu:
=INDEX(B2:B10, MATCH(TRUE, TRIM(A$2:A$10)=TRIM(E1), 0))
Þar sem þetta er fylkisformúla, ekki gleyma að ýta á Ctrl + Shift + Enter til að klára það almennilega (í Excel 365 og Excel 2021 þar sem fylki eru innfædd, þetta virkar líka sem venjuleg formúla).
Ábending. Fljótur valkostur er að keyra Trim Spaces tólið sem mun útrýmaumfram bil bæði í uppfletti og aðaltöflum á nokkrum sekúndum, sem gerir VLOOKUP formúlurnar þínar villulausar.
#VERÐI! villa í VLOOKUP formúlum
Almennt birtir Microsoft Excel #VALUE! villa ef gildi sem notað er í formúlunni er af rangri gagnagerð. Hvað VLOOKUP varðar, þá eru tvær algengar heimildir um VALUE! villa.
1. Uppflettingargildi er meira en 255 stafir
Vinsamlegast hafðu í huga að VLOOKUP getur ekki flett upp gildum sem innihalda fleiri en 255 stafi. Ef uppflettingargildin þín fara yfir þessi mörk mun #VALUE! villa birtist:
Lausn : Notaðu INDEX MATCH formúlu í staðinn. Í okkar tilfelli virkar þessi formúla fullkomlega:
=INDEX(B2:B7, MATCH(TRUE, INDEX(A2:A7= E1, 0), 0))
2. Full slóð að uppflettivinnubókinni er ekki til staðar
Ef þú ert að draga gögn úr annarri vinnubók þarftu að hafa alla slóðina að henni. Nánar tiltekið, þú þarft að láta nafn vinnubókarinnar, þar á meðal framlenginguna, fylgja með í [ferningahorni] og tilgreina nafn blaðsins og síðan upphrópunarmerki. Ef heiti vinnubókar eða blaðs, eða bæði, innihalda bil eða stafi sem eru ekki í stafrófsröð, verður slóðin að vera innan gæsalappa.
Hér er uppbygging töflufylkis Vlookup úr annarri vinnubók:
'[workbook name]sheet name'!range
Raunveruleg formúla gæti litið svipað út og þessi:
=VLOOKUP($A$2,'[New Prices.xls]Sheet1'!$B:$D, 3, FALSE)
Oftangreind formúla mun leita að gildi A2 í dálki B á blaði 1 í NýttVerð vinnubók og skila samsvarandi gildi úr dálki D.
Ef einhvern þátt í slóðinni vantar mun VLOOKUP formúlan þín ekki virka og skilar #VALUE villunni (nema uppflettingarvinnubókin sé eins og er opið).
Nánari upplýsingar er að finna í:
- Hvernig á að vísa í annað blað eða vinnubók í Excel
- Hvernig á að gera Vlookup úr annarri vinnubók
3. Col_index_num röksemdin er minni en 1
Það er erfitt að ímynda sér aðstæður þegar einhver slær viljandi inn tölu sem er minni en 1 til að tilgreina dálkinn til að skila gildum úr. En það getur gerst ef þessi röksemdafærsla er skilað af einhverri annarri aðgerð sem er hreiður í VLOOKUP formúluna þína.
Svo ef col_index_num röksemdin er en 1 mun formúlan þín skila #VALUE! villa líka.
Ef col_index_num er stærri en fjöldi dálka í töflufylkingunni, þá framleiðir VLOOKUP #REF! villa.
Leysir VLOOKUP #NAME villa
Þetta er auðveldasta málið - #NAME? villa kemur upp ef þú hefur óvart stafsett nafn fallsins rangt.
Lausnin er augljós - athugaðu stafsetninguna :)
Helstu orsakir villna í Excel ÚTLÖK
Fyrir utan með frekar flókna setningafræði, VLOOKUP hefur að öllum líkindum fleiri takmarkanir en nokkur önnur Excel aðgerð. Vegna þessara takmarkana getur að því er virðist rétt formúla oft skilað öðrum árangri en þú bjóst við. Hér að neðan finnur þúlausnir fyrir nokkrar dæmigerðar aðstæður þegar VLOOKUP mistakast.
VLOOKUP er ekki há- og hástafaviðkvæmur
VLOOKUP aðgerðin greinir ekki á milli hástafa og hástafa og lítur á lágstafi og hástafi eins.
Lausn : Notaðu VLOOKUP, XLOOKUP eða INDEX MATCH ásamt EXACT fallinu sem getur passað við stóra og stóra texta. Þú getur fundið ítarlegar skýringar og formúludæmi í þessari kennslu: 5 leiðir til að gera Vlookup í Excel.
Nýr dálkur var settur inn eða fjarlægður úr töflunni
Því miður, VLOOKUP formúlur hætta að virka í hvert skipti sem nýjum dálki er eytt úr eða bætt við uppflettitöfluna. Þetta gerist vegna þess að setningafræði VLOOKUP fallsins krefst þess að skilgreina vísitölu afturdálksins. Þegar nýr dálkur er bætt við/fjarlægður úr töflufylkingunni breytist augljóslega sú vísitala.
Lausn : INDEX MATCH formúlan kemur aftur til bjargar: ) Með INDEX MATCH, þú tilgreindu uppflettingar- og skilasviðið sérstaklega, svo þér er frjálst að eyða eða setja inn eins marga dálka og þú vilt án þess að hafa áhyggjur af því að uppfæra allar tengdar formúlur.
Tilvísanir frumna breytast þegar formúlan er afrituð í aðrar hólf
Fyrirsögnin gefur tæmandi útskýringu á vandamálinu, ekki satt?
Lausn : Notaðu alltaf algjörar tilvísanir (með $ tákninu) fyrir table_array rökin, t.d. $A$2:$C$100 eða$A:$C. Þú getur fljótt skipt á milli mismunandi viðmiðunartegunda með því að ýta á F4 takkann.
VLOOKUP skilar fyrsta fannst gildi
Eins og þú veist nú þegar, Excel VLOOKUP skilar fyrsta gildinu sem það finnur. Hins vegar geturðu þvingað það til að koma með 2., 3., 4. eða hvaða annað sem þú vilt. Það er líka leið til að fá síðustu samsvörun eða allar fundnar samsvörun.
Lausnir : Formúludæmi eru fáanleg hér:
- ÚTFLÓT og skila Nth tilviki
- VLOOKUP mörg gildi
- XLOOKUP formúla til að fá síðustu samsvörun
Hvers vegna virkar VLOOKUP minn fyrir sumar frumur en ekki aðrar?
Þegar VLOOKUP formúla skilar réttum gögnum í sumum hólfum og #N/A villur í öðrum, það geta verið nokkrar mögulegar ástæður fyrir því að það gerist.
1. Töflufylkingin er ekki læst
Segjum að þú sért með þessa formúlu í röð 2 (segjum í E2), sem virkar vel:
=VLOOKUP(D2, A2:B10, 2, FALSE)
Þegar hún er afrituð í röð 3, formúlan breytist í:
=VLOOKUP(D3, A3:B11, 2, FALSE)
Vegna þess að hlutfallsleg tilvísun er notuð fyrir töflufylki breytist hún miðað við hlutfallslega staðsetningu línunnar þar sem formúlan er afrituð , í okkar tilviki frá A2:B10 til A3:B11. Þannig að ef samsvörunin er í röð 2, þá finnst hún ekki!
Lausn : Þegar þú notar VLOOKUP formúlu fyrir fleiri en eina reit skaltu alltaf læsa töflufylkingunni tilvísun með $ tákninu eins og $A$2:$B$10.
2. Textagildi eða gagnategundir passa ekki
AnnaðAlgeng ástæða fyrir VLOOKUP bilun er munurinn á uppflettingargildinu þínu og svipað gildi í uppflettisdálknum. Í sumum tilfellum er munurinn svo lúmskur að það er erfitt að koma auga á það sjónrænt.
Lausn : Þegar VLOOKUP er að skila #N/A villu á meðan þú getur greinilega séð uppflettingargildið í uppfletti dálk, og greinilega báðir eru stafsettir nákvæmlega eins, það fyrsta sem þú þarft að gera er að ákvarða rót vandans - formúluna eða upprunagögnin.
Til að sjá hvort gildin tvö séu eins eða öðruvísi, gerðu beinan samanburð á þennan hátt:
=E1=A4
Þar sem E1 er uppflettingargildið þitt og A4 er eins gildi í uppflettisdálknum.
Ef formúlan skilar FALSE, það þýðir að gildin eru mismunandi á einhvern hátt, þó þau líti algjörlega eins út.
Ef um er að ræða tölugildi er mesta mögulega ástæðan fyrir tölur sem eru sniðnar sem texti.
Ef um er að ræða textagildi , er vandamálið líklegast í umfram bilum. Til að sannreyna þetta skaltu finna út heildarlengd strengjanna tveggja með því að nota LEN fallið:
=LEN(E1)
=LEN(A4)
Ef tölurnar sem myndast eru mismunandi (eins og á skjámyndinni hér að neðan ), þá hefurðu bent á sökudólginn - aukabil:
Til að leysa málið skaltu annað hvort fjarlægja aukabil eða nota þessa INDEX MATCH TRIM formúlu sem lausn.
Hvers vegna dregur VLOOKUP röng gögn?
Það gætu verið enn fleiri ástæður fyrir því aðVLOOKUP þín skilar rangu gildi:
- Röng leitarhamur . Ef þú vilt nákvæma samsvörun, vertu viss um að stilla range_lookup röksemdin á FALSE. Sjálfgefið er TRUE, þannig að ef þú sleppir þessum rökum mun VLOOKUP gera ráð fyrir að þú sért að leita að áætlaðri samsvörun og leitar að næst gildinu sem er minna en uppflettingargildið.
- Upplitsdálkurinn er ekki raðað . Til að áætluð samsvörun VLOOKUP ( svið_útlit stillt á TRUE) virki rétt, verður fyrsta dálkurinn í töflufylkingunni að vera flokkaður í hækkandi röð, frá minnstu til stærstu.
- Tvítekningar í uppflettisdálkurinn . Ef uppflettisdálkurinn inniheldur tvö eða fleiri tvítekin gildi mun VLOOKUP skila fyrstu samsvöruninni sem fannst, sem gæti ekki verið sú sem þú bjóst við.
- Rangur skiladálkur . Athugaðu vísitöluna í 3. röksemdafærslunni :)
VLOOKUP virkar ekki á milli tveggja blaða
Í fyrsta lagi skal tekið fram að algengar ástæður #N/A, #VALUE og #REF villur sem ræddar eru hér að ofan geta valdið sömu vandamálum þegar flett er upp af öðru blaði. Ef það er ekki raunin skaltu athuga eftirfarandi atriði:
- Gakktu úr skugga um að ytri tilvísun í annað blað eða aðra vinnubók sé rétt.
- Þegar þú gerir Vlookup úr annarri vinnubók sem er lokað í augnablikinu skaltu ganga úr skugga um að formúlan þín innihaldi alla slóðina að lokuðu vinnubókinni.
- Ef