Sisukord
Õpetus näitab, kuidas kombineerida V LOOKUP ja IF funktsioon koos v-lookup koos if tingimusega Excelis. Samuti õpite, kuidas kasutada IF ISNA VLOOKUP valemeid, et asendada #N/A vead oma teksti, nulli või tühja lahtriga.
Kuigi funktsioonid VLOOKUP ja IF on kasulikud ka eraldi, annavad nad koos veelgi väärtuslikumaid kogemusi. See õpetus eeldab, et mäletate hästi nende kahe funktsiooni süntaksit, vastasel juhul võite oma teadmisi ülaltoodud linkide abil värskendada.
Vlookup koos If avaldusega: tagastab True/False, Yes/No jne.
Üks levinumaid stsenaariume, kui kombineerida If ja Vlookup koos, on võrrelda Vlookup'i poolt tagastatud väärtust näidisväärtusega ja tagastada Jah / Ei või Tõsi / vale kui tulemus.
Enamikul juhtudel sobib hästi järgmine üldine valem:
IF(VLOOKUP(...) = väärtus , TRUE, FALSE)Selgesõnaliselt tõlgituna annab valem Excelile korralduse tagastada Tõsi kui Vlookup on tõene (st võrdne määratud väärtusega). Kui Vlookup on vale (mitte võrdne määratud väärtusega), siis tagastatakse valemiga Vale .
Järgnevalt leiate mõned selle IF Vlookup valemi tegelikud kasutusalad.
Näide 1. Konkreetse väärtuse otsimine
Oletame, et teil on nimekiri esemetest veerus A ja kogus veerus B. Te loote oma kasutajatele armatuurlauda ja vajate valemit, mis kontrolliks eseme kogust veerus E1 ja teavitaks kasutajat sellest, kas toode on laos või on otsas.
Te tõmbate koguse tavalise Vlookupiga, millel on täpse vaste valem, näiteks nii:
=VLOOKUP(E1,$A$2:$B$10,2,FALSE)
Seejärel kirjutage IF avaldis, mis võrdleb Vlookup'i tulemust nulliga ja tagastab "Ei", kui see on võrdne 0, "Jah" vastasel juhul:
=IF(VLOOKUP(E1,$A$2:$B$10,2,FALSE)=0, "Ei", "Jah")
Selle asemel, et Jah/ei , saate tagasi pöörduda TÕENE/VALE või Laos/müüdud või mis tahes muud kaks valikut. Näiteks:
=IF(VLOOKUP(E1,$A$2:$B$10,2)=0, "Välja müüdud", "Laos")
Samuti saate võrrelda Vlookup'i poolt tagastatud väärtust näidisega tekst Sellisel juhul tuleb tekstijada kindlasti sulgeda jutumärkidesse, näiteks nii:
=IF(VLOOKUP(E1,$A$2:$B$10,2)="näidistekst",TRUE,FALSE)
Näide 2. Vlookupi tulemuse võrdlemine teise lahtriga
Teine tüüpiline näide Vlookup'i ja If-tingimuse kohta Excelis on Vlookup'i väljundi võrdlemine teises lahtris oleva väärtusega. Näiteks võime kontrollida, kas see on suurem või võrdne lahtris G2 oleva arvuga:
=IF(VLOOKUP(E1,$A$2:$B$10,2)>=G2, "Jah!", "Ei")
Ja siin on meie If-valem Vlookupiga tegevuses:
Samamoodi saate kasutada mis tahes muud loogilist operaatorit koos lahtriviitega Exceli If Vlookup-valemis.
Näide 3. Vlookup väärtused lühemas nimekirjas
Võrrelda iga lahtrit sihtveergu teise loeteluga ja tagastada Tõsi või Jah kui vastavus leitakse, Vale või Ei muidu kasutage seda üldist IF ISNA VLOOKUP valemit:
IF(ISNA( VLOOKUP(...)), "Ei", "Jah")Kui Vlookup annab tulemuseks #N/A vea, tagastab valem "No", mis tähendab, et otsinguväärtust ei leita otsingulistist. Kui vastavus leitakse, tagastatakse "Yes". Näiteks:
=IF(ISNA(VLOOKUP(A2,$D$2:$D$4,1,FALSE)), "Ei", "Jah")
Kui teie äriloogika nõuab vastupidiseid tulemusi, vahetage lihtsalt "Jah" ja "Ei", et valemi loogika ümber pöörata:
=IF(ISNA(VLOOKUP(A2,$D$2:$D$4,1,FALSE)), "Jah", "Ei")
Excel If Vlookup valem erinevate arvutuste tegemiseks
Lisaks oma tekstisõnumite kuvamisele saab If funktsiooniga Vlookup teha erinevaid arvutusi, mis põhinevad teie poolt määratud kriteeriumidel.
Võttes meie näite edasi, arvutame konkreetse müüja (F1) komisjonitasu sõltuvalt tema efektiivsusest: 20% komisjonitasu neile, kes teenisid 200 dollarit ja rohkem, 10% kõigile teistele.
Selleks kontrollite, kas Vlookup'i poolt tagastatud väärtus on suurem või võrdne 200-ga, ja kui see on nii, siis korrutate selle 20%-ga, vastasel juhul 10%-ga:
=IF(VLOOKUP(F1,$A$2:$C$10,3,FALSE )>=200, VLOOKUP(F1,$A$2:$C$10,3,FALSE)*20%, VLOOKUP(F1,$A$2:$C$10,3,FALSE)*10%)
Kus A2:A10 on müüjate nimed ja C2:C10 on müük.
IF ISNA VLOOKUP, et varjata #N/A vigu
Kui funktsioon VLOOKUP ei leia määratud väärtust, viskab ta vea #N/A. Et seda viga tabada ja asendada see oma tekstiga, põimige Vlookup-valem IF-funktsiooni loogilisse testi, näiteks nii:
IF(ISNA(VLOOKUP(...)), "Ei leitud", VLOOKUP(...))Loomulikult võite sisestada "Ei leitud" asemel mis tahes teksti, mida soovite.
Oletame, et teil on ühes veerus nimekiri müüjate nimedest ja teises veerus müügisummad. Teie ülesanne on tõmmata välja number, mis vastab kasutaja poolt F1 sisestatud nimele. Kui nime ei leita, kuvage selle kohta teade.
Kui nimed on A2:A10 ja summad C2:C10, saab ülesande täita järgmise If Vlookup valemiga:
=IF(ISNA(VLOOKUP(F1,$A$2:$C$10,3,FALSE)), "Ei leitud", VLOOKUP(F1,$A$2:$C$10,3,FALSE))
Kui nimi leitakse, tagastatakse vastav müügisumma:
Kui otsinguväärtust ei leita, siis on Ei leitud ilmub #N/A veateate asemel teade #N/A:
Kuidas see valem töötab
Valemi loogika on väga lihtne: te kasutate funktsiooni ISNA, et kontrollida Vlookup'i #N/A vigade suhtes. Kui viga esineb, siis ISNA tagastab TRUE, vastasel juhul FALSE. Ülaltoodud väärtused lähevad IF-funktsiooni loogilisele testile, mis teeb ühte järgmistest toimingutest:
- Kui loogiline test on TRUE (#N/A viga), kuvatakse teie sõnum.
- Kui loogiline test on FALSE (otsinguväärtus on leitud), annab Vlookup tavaliselt vaste.
IFNA VLOOKUP uuemates Exceli versioonides
Alates Excel 2013-st saate kasutada funktsiooni IFNA asemel IF ISNA, et püüda ja käsitleda #N/A vigu:
IFNA(VLOOKUP(...), " Ei leitud ")Meie näites oleks valem järgmine:
=IFNA(VLOOKUP(F1,$A$2:$C$10,3, FALSE), "Ei leitud")
Vihje. Kui soovite tabada igasuguseid vigu, mitte ainult #N/A, kasutage VLOOKUP-i koos funktsiooniga IFERROR. Täpsemalt saate lugeda siit: IFERROR VLOOKUP Excelis.
Excel Vlookup: kui ei leitud, tagastab 0
Kui töötate arvväärtustega, võite soovida tagastada nulli, kui otsinguväärtust ei leita. Selleks kasutage eespool käsitletud IF ISNA VLOOKUP valemit väikese muudatusega: tekstisõnumi asemel sisestage 0 väljalõikes value_if_true IF-funktsiooni argument:
IF(ISNA(VLOOKUP(...)), 0, VLOOKUP(...))Meie näidistabelis oleks valem järgmine:
=IF(ISNA(VLOOKUP(F2,$A$2:$C$10,3,FALSE)), 0, VLOOKUP(F2,$A$2:$C$10,3,FALSE))
Excel 2016 ja 2013 viimastes versioonides saate taas kasutada IFNA Vlookup-kombinatsiooni:
=IFNA(VLOOKUP(I2,$A$2:$C$10,3, FALSE), 0)
Excel Vlookup: kui ei leidu, tagastab tühja lahtri
See on veel üks "Vlookup if then" avalduse variant: tagastage mitte midagi, kui otsinguväärtust ei leita. Selleks andke oma valemile korraldus tagastada #N/A vea asemel tühi string (""):
IF(ISNA(VLOOKUP(...)), "", VLOOKUP(...))Allpool on esitatud paar täielikku valemit:
Kõikide Exceli versioonide jaoks:
=IF(ISNA(VLOOKUP(F2,$A$2:$C$10,3,FALSE)), "", VLOOKUP(F2,$A$2:$C$10,3,FALSE))
Excel 2016 ja Excel 2013 jaoks:
=IFNA(VLOOKUP(F2,$A$2:$C$10,3, FALSE), "")
If koos indeksiga Match - vasakpoolne vlookup koos If tingimusega
Kogenud Exceli kasutajad teavad, et funktsioon VLOOKUP ei ole ainus viis vertikaalse otsingu tegemiseks Excelis. Selleks saab kasutada ka kombinatsiooni INDEX MATCH, mis on veelgi võimsam ja mitmekülgsem. Hea uudis on see, et Index Match saab töötada koos IF-iga täpselt samamoodi nagu Vlookup.
Näiteks on teil veerus A tellimuste numbrid ja veerus B müüjate nimed. Otsite valemit, et leida konkreetse müüja tellimuse number.
Vlookup'i ei saa sel juhul kasutada, sest see ei saa otsida paremalt vasakule. Index Match töötab tõrgeteta seni, kuni otsinguväärtus leitakse otsingus veerus. Kui mitte, ilmub #N/A viga. Standardse veamärgistuse asendamiseks oma tekstiga pesitse Index Match IF ISNA sees:
=IF(ISNA(INDEX(A2:A10, MATCH(F1, $B$2:$B$10, 0))), "Ei leitud", INDEX(A2:A10, MATCH(F1, $B$2:$B$10, 0))))
Excel 2016is ja 2016is saate kasutada IF ISNA asemel IF ISNA, et muuta valem kompaktsemaks:
=IFNA(INDEX(A2:A10, MATCH(F1, $B$2:$B$10, 0)), "Ei leitud")
Samamoodi saate kasutada indeksit Match teistes If-vormelites.
Nii kasutate Vlookup ja IF avaldust koos Excelis. Et lähemalt tutvuda selles õpetuses käsitletud valemitega, olete teretulnud alljärgnevalt alla laadima meie näidistöömappi. Tänan teid lugemise eest ja loodan, et näeme teid järgmisel nädalal meie blogis!
Praktiline töövihik allalaadimiseks
Excel IF Vlookup - valemi näited (.xlsx fail)