Enhavtabelo
La lernilo montras kiel kombini V SERĈO kaj IF funkcias kune al v-serĉo kun se kondiĉo en Excel. Vi ankaŭ lernos kiel uzi formulojn SE ESTAS VLOOKUP por anstataŭigi #N/A-erarojn per via propra teksto, nula aŭ malplena ĉelo.
Dum la funkcioj VLOOKUP kaj IF estas utilaj per si mem, kune ili liveras eĉ pli valorajn spertojn. Ĉi tiu lernilo implicas, ke vi bone memoras la sintakson de la du funkcioj, alie vi eble volas pliprofundigi vian scion sekvante la ĉi-suprajn ligilojn.
Voki kun If-deklaro: return True/ Falsa, Jes/Ne, ktp.
Unu el la plej oftaj scenaroj kiam vi kombinas Se kaj Vserĉo kune estas kompari la valoron redonitan de Vserĉo kun specimena valoro kaj redoni Jes / Ne aŭ Vera/Malvera kiel rezulto.
En la plej multaj kazoj, la jena ĝenerala formulo bone funkcius:
IF(VLOOKUP(…) = valoro, VERA, FALSA)Tradukita en simpla angla, la formulo instrukcias Excel redoni Vera se Vserĉo estas vera (t.e. egala al la specifita valoro). Se Vserĉo estas malvera (ne egala al la specifita valoro), la formulo liveras False .
Malsupre vi trovos kelkajn realajn uzojn de ĉi tiu IF Vserĉa formulo.
Ekzemplo 1. Serĉu specifan valoron
Ni diru, vi havas liston de eroj en kolumno A kaj kvanton en kolumno B. Vi kreas panelon por viaj uzantoj kaj bezonas formulon.tio kontrolus la kvanton por ero en E1 kaj informus la uzanton ĉu la objekto estas en stoko aŭ elĉerpita.
Vi tiras la kvanton per regula Vserĉo kun ekzakta kongrua formulo kiel ĉi tiu:
=VLOOKUP(E1,$A$2:$B$10,2,FALSE)
Tiam, skribu IF-programon, kiu komparas la rezulton de Vserĉo kun nulo, kaj redonas "Ne" se ĝi estas egala al 0, "Jes" alie:
=IF(VLOOKUP(E1,$A$2:$B$10,2,FALSE)=0,"No","Yes")
Anstataŭ Jes/Ne , vi povas redoni VERA/FALSA aŭ En Stoko/Elĉerpita aŭ iuj aliaj du elektoj. Ekzemple:
=IF(VLOOKUP(E1,$A$2:$B$10,2)=0,"Sold out","In stock")
Vi ankaŭ povas kompari la valoron redonitan de Vserĉo kun specimena teksto . En ĉi tiu kazo, nepre enmetu tekstan ĉenon inter citiloj, kiel ĉi tio:
=IF(VLOOKUP(E1,$A$2:$B$10,2)="sample text",TRUE,FALSE)
Ekzemplo 2. Komparu rezulton de Vserĉo kun alia ĉelo
Alia tipa ekzemplo de Vlookup kun Se kondiĉo en Excel komparas la Vlookup-produktaĵon kun valoro en alia ĉelo. Ekzemple, ni povas kontroli ĉu ĝi estas pli granda ol aŭ egala al nombro en ĉelo G2:
=IF(VLOOKUP(E1,$A$2:$B$10,2)>=G2,"Yes!","No")
Kaj jen nia If-formulo kun Vserĉo en ago:
Simile, vi povas uzi ajnan alian logikan operatoron kune kun ĉelreferenco en via formulo de Excel If Vserĉo.
Ekzemplo 3. Vserĉo-valoroj en pli mallonga listo
Por kompari ĉiun ĉelon en la cela kolumno kun alia listo kaj redoni Vera aŭ Jes se kongruo estas trovita, Malvera aŭ Ne alie, uzu ĉi tiun ĝeneralan formulon IF ISNA VLOOKUP:
IF(ISNA(VSERĈO(…)),"Ne","Jes")Se Vserĉo rezultigas la eraron #N/A, la formulo liveras "Ne", tio signifas, ke la serĉvaloro ne troviĝas en la serĉlisto. Se la kongruo estas trovita, "Jes" estas resendita. Ekzemple:
=IF(ISNA(VLOOKUP(A2,$D$2:$D$4,1,FALSE)),"No","Yes")
Se via komerca logiko postulas la kontraŭajn rezultojn, simple interŝanĝu "Jes" kaj "Ne" por inversigi la logikon de la formulo:
=IF(ISNA(VLOOKUP(A2,$D$2:$D$4,1,FALSE)),"Yes","No")
Formulo de Excel If Vlookup por fari malsamajn kalkulojn
Krom montri viajn proprajn tekstmesaĝojn, Se funkcio kun Vlookup povas fari malsamajn kalkulojn surbaze de la kriterioj kiujn vi specifas.
Prenante nian ekzemplon plu, ni kalkulu la komisionon de specifa vendisto (F1) depende de ilia efikeco: 20% komisiono por tiuj kiuj gajnis $200 kaj pli, 10% por ĉiuj aliaj .
Por tio, vi kontrolas ĉu la valoro redonita de Vserĉo estas pli granda ol aŭ egala al 200, kaj se ĝi estas, multipliku ĝin per 20%, alie per 10%:
=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%)
Kie A2:A10 estas vendistaj nomoj kaj C2:C10 estas vendoj.
SE ESTAS VLOOKUP por kaŝi #N/A erarojn
Se la funkcio VLOOKUP ne povas trovi specifitan valoron, ĝi ĵetas #N/A-eraron. Por kapti tiun eraron kaj anstataŭigi ĝin per via propra teksto, enmetu formulon de Vserĉo en la logika testo de la funkcio IF, jene:
IF(ISNA(VLOOKUP(...)), "Ne trovita", VLOOKUP(...) )Nature, vi povas tajpi ajnan tekston, kiun vi ŝatas anstataŭ "Ne trovita".
Supozi, ke vi havas liston de vendistoj.nomoj en unu kolumno kaj vendokvantoj en alia kolumno. Via tasko estas tiri nombron respondan al la nomo, kiun la uzanto enigas en F1. Se la nomo ne estas trovita, montru mesaĝon indikante tion.
Kun la nomoj en A2:A10 kaj kvantoj C2:C10, la tasko povas esti plenumita per la jena Se Vserĉa formulo:
=IF(ISNA(VLOOKUP(F1,$A$2:$C$10,3,FALSE)), "Not found", VLOOKUP(F1,$A$2:$C$10,3,FALSE))
Se la nomo estas trovita, responda vendokvanto estas redonita:
Se la serĉvaloro ne estas trovita, la Ne trovita mesaĝo aperas anstataŭ la eraro #N/A:
Kiel ĉi tiu formulo funkcias
La logiko de la formulo estas tre simpla: vi uzas la funkcion ISNA. por kontroli Vserĉon por #N/A-eraroj. Se okazas eraro, ISNA liveras VERA, alie FALSE. La supraj valoroj iras al la logika testo de la IF-funkcio, kiu faras unu el la jenaj:
- Se la logika testo estas VERA (#N/A eraro), via mesaĝo estas montrata.
- Se la logika testo estas FALSA (serĉvaloro estas trovita), Vserĉo resendas kongruon normale.
IFNA VLOOKUP en pli novaj Excel-versioj
Komencante per Excel 2013, vi povas uzi la IFNA-funkcion anstataŭ IF ISNA por kapti kaj trakti #N/A-eraroj:
IFNA(VLOOKUP(…), " Ne trovita")En nia ekzemplo, la formulo estus prenu la jenan formon:
=IFNA(VLOOKUP(F1,$A$2:$C$10,3, FALSE), "Not found")
Konsileto. Se vi ŝatus kapti ĉiajn erarojn, ne nur #N/A, uzu VLOOKUP kombine kun la funkcio IFERROR. Pliaj detaloj troveblas ĉi tie: IFERAROVSERĈO en Excel.
Excel Vserĉo: se ne trovita, revenu 0
Kiam laboras kun nombraj valoroj, vi eble volas redoni nulon kiam la serĉvaloro ne estas trovita. Por fari ĝin, uzu la formulon IF ISNA VLOOKUP diskutita supre kun iom da modifo: anstataŭ tekstmesaĝo, liveru 0 en la argumento value_if_true de la IF-funkcio:
IF(ISNA(VLOOKUP( …)), 0, VSERĈO(…))En nia specimena tabelo, la formulo estus jene:
=IF(ISNA(VLOOKUP(F2,$A$2:$C$10,3,FALSE)), 0, VLOOKUP(F2,$A$2:$C$10,3,FALSE))
En la lastatempaj versioj de Excel 2016 kaj 2013, vi povas uzi la kombinaĵon IFNA Vlookup denove:
=IFNA(VLOOKUP(I2,$A$2:$C$10,3, FALSE), 0)
Excel Vlookup: se ne trovite, revenu malplenan ĉelon
Ĉi tio estas unu plia variaĵo. de la deklaro "Vlookup if then": resendu nenion kiam la serĉvaloro ne estas trovita. Por fari tion, instruu vian formulon resendi malplenan ĉenon ("") anstataŭ la #N/A eraro:
IF(ISNA(VLOOKUP(…)), "", VLOOKUP(...))Sube estas kelkaj kompletaj formulekzemploj:
Por ĉiuj Excel-versioj:
=IF(ISNA(VLOOKUP(F2,$A$2:$C$10,3,FALSE)), "", VLOOKUP(F2,$A$2:$C$10,3,FALSE))
Por Excel 2016 kaj Excel 2013:
=IFNA(VLOOKUP(F2,$A$2:$C$10,3, FALSE), "")
Se kun Indeksa Match - maldekstra vserĉo kun If-kondiĉo
Spertaj Excel-uzantoj scias, ke la funkcio VLOOKUP ne estas la sola maniero fari vertikalan serĉon en Excel. La kombinaĵo INDEX MATCH ankaŭ povas esti uzata por ĉi tiu celo kaj ĝi estas eĉ pli potenca kaj diverstalenta. La bona novaĵo estas, ke Index Match povas labori kune kun IF en precize same kielVserĉo.
Ekzemple, vi havas mendnumeron en kolumno A kaj vendistajn nomojn en kolumno B. Vi serĉas formulon por tiri la mendnumeron por specifa vendisto.
Vserĉo ne povas esti uzata en ĉi tiu kazo ĉar ĝi ne povas serĉi de dekstre al maldekstre. Indeksa Match funkcios senprobleme tiel longe kiel la serĉvaloro troviĝas en la serĉkolumno. Se ne, #N/A-eraro aperos. Por anstataŭigi la norman erarnotacion per via propra teksto, nestu Indekskongruon ene de IF ISNA:
=IF(ISNA(INDEX(A2:A10, MATCH(F1, $B$2:$B$10, 0))), "Not found", INDEX(A2:A10, MATCH(F1, $B$2:$B$10, 0)))
En Excel 2016 kaj 2016, vi povas uzi IFNA anstataŭ IF ISNA por pligrandigi la formulon. kompakta:
=IFNA(INDEX(A2:A10, MATCH(F1, $B$2:$B$10, 0)), "Not found")
Simile, vi povas uzi Indekskongruon en aliaj If-formuloj.
Jen kiel vi uzas Vlookup kaj IF-deklaro kune en Excel. Por pli detale rigardi la formulojn diskutitajn en ĉi tiu lernilo, vi bonvenas elŝuti nian specimenan laborlibron sube. Mi dankas vin pro legado kaj esperas vidi vin en nia blogo venontsemajne!
Praktiku laborlibron por elŝuto
Excel IF Vlookup - formulekzemploj (.xlsx-dosiero)