IF ISERROR VLOOKUP valem Excelis ja selle alternatiivid

  • Jaga Seda
Michael Brown

Selles õpetuses vaatleme, kuidas kasutada ISERROR-i koos VLOOKUP-iga Excelis, et käsitleda igasuguseid vigu produktiivselt.

VLOOKUP on üks kõige segasematest Exceli funktsioonidest, mida vaevavad paljud probleemid. Ükskõik, millises tabelis te vaatate, #N/A vead on tavaline nähtus, aeg-ajalt ilmnevad ka #NAME ja #VALUE. VLOOKUPi kasutamine koos ISERRORiga aitab teil tabada kõik võimalikud vead ja käsitleda neid kõige sobivamal viisil.

    Miks VLOOKUP annab vea?

    Kõige tavalisem viga VLOOKUP-valemites on järgmine #N/A kui otsinguväärtust ei leita. See võib juhtuda erinevatel põhjustel:

    • Otsinguväärtust ei ole otsingumassiivis olemas.
    • Otsinguväärtus on valesti kirjutatud.
    • Otsinguväärtuses või otsinguväravas on ees- või tagantjärele tühikuid.
    • Otsingusammas ei ole tabeli massiivi kõige vasakpoolsem veerg.

    Pealegi võite sattuda #VALUE! viga, nt kui otsinguväärtus sisaldab rohkem kui 255 tähemärki. Kui funktsiooni nimes on kirjavea, siis kuvatakse funktsiooni #NAME? ilmub viga.

    Täieliku viite saamiseks vaadake meie varasemat postitust Miks Excel VLOOKUP ei tööta.

    IF ISERROR VLOOKUP valem, et asendada vead kohandatud tekstiga

    Et varjata kõiki võimalikke vigu, mida VLOOKUP võib vallandada, võite paigutada selle IF ISERROR valemi sisse järgmiselt:

    IF(ISERROR(VLOOKUP(...)), " text_if_error ", VLOOKUP(....))

    Näiteks tõmbame välja nende ainete nimed, milles rühma A õpilased testides läbi kukkusid:

    =VLOOKUP(A3, $D$3:$E$9, 2, FALSE)

    Selle tulemusena saate hulga #N/A vigu, mis võivad jätta mulje, et valem on vigane.

    Tegelikult näitavad need vead lihtsalt, et mõned otsinguväärtused (A3:A14) ei leidu otsingulisti (D3:D9). Et seda mõtet selgelt edasi anda, pesitse oma VLOOKUP-valem IF ISERROR konstruktsioonis:

    =IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))

    See püüab vead ja tagastab teie kohandatud tekstisõnumi:

    Näpunäited ja märkused:

    • Selle valemi peamine eelis on see, et see töötab kenasti kõik versioonid Excel 2000 kuni Excel 365. Tänapäevastes versioonides on olemas lihtsamad ja kompaktsemad alternatiivid.
    • Funktsioon ISERROR püüab absoluutselt kõik vead , näiteks #N/A, #NAME, #VALUE jne. Juhul kui soovite kuvada kohandatud sõnumit ainult siis, kui otsinguväärtust ei leita (#N/A viga), kasutage IF ISNA VLOOKUP (kõigis versioonides) või IFNA VLOOKUP (Excel 2013 ja uuemad versioonid).

    ISERROR VLOOKUP, et tagastada tühi lahter, kui viga esineb

    Et vea korral oleks lahter tühi, saada oma valemiga kohandatud teksti asemel tagasi tühi string (""):

    IF(ISERROR(VLOOKUP(...)), "", VLOOKUP(...))

    Meie puhul on valem selline:

    =IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))

    Tulemus on täpselt selline nagu oodatud - tühi lahter, kui õpilase nime ei leidu otsingutabelis.

    Vihje. Samamoodi saate VLOOKUP-i vead asendada nullide, kriipsude või mis tahes muu soovitud märgiga. Lihtsalt kasutage tühja stringi asemel soovitud märki.

    IF ISERROR VLOOKUP Jah/ei valemiga Jah/ei

    Mõnes olukorras võite otsida midagi, kuid selle asemel, et tõmmata tikud lihtsalt tahavad naasta Jah (või mõni muu tekst, kui otsinguväärtus leitakse) ja Ei (kui otsinguväärtust ei leita). Selleks võite kasutada seda üldist valemit:

    IF(ISERROR(VLOOKUP(...)), " text_if_not_found ", " text_if_found ")

    Oletame, et meie näidisandmestiku puhul soovite teada saada, millised õpilased jäid testis läbi kukkuma ja millised mitte. Selleks serveerige juba tuttavat ISERROR VLOOKUP valemit loogilisele testile IF ja käskige tal väljastada "Ei", kui väärtust ei leitud (ISERROR VLOOKUP tagastab TRUE), "Jah", kui leitud (ISERROR VLOOKUP tagastab FALSE):

    =IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "Ei", "Jah")

    ISERROR VLOOKUP alternatiivid

    Kombinatsioon IF ISERROR on vanim ajas tõestatud tehnika Vlookup'i vigadeta teostamiseks Excelis. Aja jooksul on arenenud uusi funktsioone, mis pakuvad lihtsamaid viise sama ülesande täitmiseks. Järgnevalt arutame teisi võimalikke lahendusi ja seda, millal igaüht neist on kõige parem rakendada.

    IFERROR VLOOKUP

    Kättesaadav Excel 2007 ja uuemad versioonid

    Alates versioonist 2007 on Excelil spetsiaalne funktsioon nimega IFERROR, mille abil saab kontrollida valemit vigade suhtes ja tagastada oma teksti (või käivitada alternatiivse valemi), kui mõni viga avastatakse.

    IFERROR(VLOOKUP(...), " text_if_error ")

    Reaalse elu valem on järgmine:

    =IFERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE), "No")

    Esmapilgul tundub see olevat IF ISERROR VLOOKUP valemi lühem analoog. Siiski on oluline erinevus:

    • IFERROR VLOOKUP eeldab, et soovite alati VLOOKUPi tulemust, kui see ei ole viga.
    • IF ISERROR VLOOKUP võimaldab määrata, mida tagastada, kui esineb viga ja mida, kui viga ei esine.

    Lisateavet leiate jaotisest IFERRORi kasutamine VLOOKUPiga Excelis.

    IF ISNA VLOOKUP

    Töötab Excel 2000 ja hilisemates programmides

    Olukorras, kus tahetakse püüda ainult #N/A ilma teisi vigu kinni püüdmata, tuleb appi funktsioon ISNA. Süntaks on sama, mis IF ISERROR VLOOKUPil:

    IF(ISNA(VLOOKUP(...)), " text_if_error ", VLOOKUP(....))

    Kuid teatud tingimustel võib see näiliselt identne valem anda erinevaid tulemusi:

    =IF(ISNA(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))

    Alloleval pildil sisaldab lahter A13 rohkelt tagumisi tühikuid, mille tõttu otsinguväärtuse kogupikkus ületab 255 tähemärki. Selle tulemusena vallandab valem #VALUE! vea, mis juhib teie tähelepanu sellele lahtrile ja julgustab uurima põhjuseid. ISERROR VLOOKUP annaks sel juhul tagasi "No", mis ainult hägustaks probleemi ja annaks täiesti vale tulemuse.

    Millal kasutada:

    See valem töötab suurepäraselt olukorras, kus soovite kuvada mingit teksti ainult siis, kui otsinguväärtust ei leita, ja ei soovi varjata VLOOKUP-valemi enda aluseks olevaid probleeme, nt kui funktsiooni nimi on valesti kirjutatud (#NAME?) või kui otsingu töövihiku täielik tee ei ole määratud (#VALUE!).

    Lisateavet leiate ISNA funktsioonist Excelis koos valemite näidetega.

    IFNA VLOOKUP

    Kättesaadav Excel 2013 ja uuemad versioonid

    See on IF ISNA kombinatsiooni kaasaegne asendaja, mis võimaldab lihtsamalt käsitleda #N/A vigu.

    IFNA(VLOOKUP(...), " text_if_error ")

    Siin on meie IF ISNA VLOOKUP-vormeli lühendatud ekvivalent:

    =IFNA(VLOOKUP(A3, $D$3:$E$9, 2, FALSE), "No")

    Millal kasutada:

    See on ideaalne lahendus #N/A vigade püüdmiseks ja käsitlemiseks Exceli kaasaegsetes versioonides (2013 - 365).

    Täielik teave on esitatud Exceli IFNA-funktsioonis.

    XLOOKUP

    Toetatud Excel 2021 ja Excel 365

    Tänu oma sisseehitatud "if error" funktsioonile on XLOOKUP funktsioon kõige lihtsam viis otsida ilma #N/A vigadeta Excelis. Lihtsalt, kirjutage oma kasutajasõbralik tekst valikulisse 4. argumenti nimega if_not_found .

    Näiteks:

    =XLOOKUP(A3, $D$3:$D$9, $E$3:$E$9, "No")

    Piirang: See püüab ainult #N/A vigu, ignoreerides teisi tüüpe.

    Lisateavet leiate Exceli funktsioonist XLOOKUP.

    Nagu näete, pakub Excel üsna palju erinevaid võimalusi, et saada VLOOKUP-i vigade suhtes rig. Loodetavasti on see õpetus valgustanud, kuidas neid efektiivselt kasutada. Tänan teid lugemise eest ja loodan, et näeme teid järgmisel nädalal meie blogis!

    Saadaolevad allalaadimised

    ISERROR koos VLOOKUPi näidetega (.xlsx fail)

    Michael Brown on pühendunud tehnoloogia entusiast, kelle kirg on tarkvaratööriistade abil keerukate protsesside lihtsustamine. Rohkem kui kümneaastase kogemusega tehnoloogiatööstuses on ta lihvinud oma oskusi Microsoft Excelis ja Outlookis, samuti Google Sheetsis ja Docsis. Michaeli ajaveebi eesmärk on jagada oma teadmisi ja teadmisi teistega, pakkudes hõlpsasti järgitavaid näpunäiteid ja õpetusi tootlikkuse ja tõhususe parandamiseks. Olenemata sellest, kas olete kogenud professionaal või algaja, pakub Michaeli ajaveebi väärtuslikke teadmisi ja praktilisi nõuandeid nende oluliste tarkvaratööriistade maksimaalseks kasutamiseks.