Enhavtabelo
En ĉi tiu lernilo, ni rigardos kiel uzi IFERROR kaj VLOOKUP funkciojn kune por kapti kaj trakti malsamajn erarojn. Krome, vi lernos kiel fari sinsekvajn serĉojn en Excel nestante multoblajn IFERROR-funkciojn unu sur la alian.
Excel VLOOKUP kaj IFERARO - ĉi tiuj du funkcioj povas esti sufiĉe malfacile kompreneblaj aparte, des malpli kiam ili estas kombinitaj. En ĉi tiu artikolo, vi trovos kelkajn facilajn sekvajn ekzemplojn, kiuj traktas komunajn uzojn kaj klare ilustras la logikon de la formuloj.
Se vi ne havas multe da sperto pri funkcioj IFERARO kaj VLOOKUP, eble estos bona ideo revizii iliajn bazaĵojn unue sekvante la ĉi-suprajn ligilojn.
IFERROR VLOOKUP formulo por trakti #N/A kaj aliajn erarojn
Kiam Excel VLookup malsukcesas trovi serĉvaloro, ĝi ĵetas #N/A eraro, kiel ĉi tio:
Laŭ viaj komercaj bezonoj, vi eble volas kaŝvesti la eraron per via propra teksto, nulo. , aŭ malplena ĉelo.
Ekzemplo 1. IFERARO kun VLOOKUP formulo por anstataŭigi erarojn per via propra teksto
Se vi ŝatus anstataŭigi la norman erarnotacion per via propra teksto, envolvu vian VLOOKUP formulo en IFERARO, kaj tajpu ajnan tekston, kiun vi volas en la dua argumento ( valoro_se_eraro ), ekzemple "Ne trovita":
IFERARO(VLOOKUP( ...),"Ne trovita")Kun la serĉvaloro en B2 en la Ĉefa tabelo kaj la serĉa intervalo A2:B4 en la Serĉotablo, la formulo prenas la jenan formon:
=IFERROR(VLOOKUP(B2,'Lookup table'!$A$2:$B$5, 2, FALSE), "Not found")
La ekrankopio malsupre montras nian Excel IFERROR VLOOKUP formulo en ago:
La rezulto aspektas multe pli komprenebla kaj multe malpli timiga, ĉu ne?
Simile, vi povas uzi INDEX MATCH kune kun IFERROR:
=IFERROR(INDEX('Lookup table'!$B$2:$B$5,MATCH(B2,'Lookup table'!$A$2:$A$5,0)), "Not found")
La IFERROR. INDEX MATCH-formulo estas precipe utila kiam vi volas tiri valorojn de kolumno kiu situas maldekstre de la serĉkolumno (maldekstra serĉo), kaj redoni vian propran tekston kiam nenio estas trovita.
Ekzemplo 2. IFERARO kun VLOOKUP por redoni malplenan aŭ 0 se nenio estas trovita
Se vi volas nenion montri kiam la serĉvaloro ne estas trovita, IFERROR montru malplenan ĉenon (""):
IFERARO(VLOOKUP( …),"")En nia ekzemplo, la formulo iras jene:
=IFERROR(VLOOKUP(B2,'Lookup table'!$A$2:$B$5, 2, FALSE), "")
Kiel vi povas vidi, ĝi resendas nenion kiam la serĉvaloro ne estas en la serĉlisto.
Se vi ŝatus anstataŭigi la eraron per la nulvaloro , metu 0 en la lasta a rgument:
=IFERROR(VLOOKUP(B2,'Lookup table'!$A$2:$B$5, 2, FALSE), 0)
Atento! Excel IFERROR-funkcio kaptas ĉiajn erarojn, ne nur #N/A. Ĉu ĝi estas bona aŭ malbona? Ĉio dependas de via celo. Se vi volas maski ĉiujn eblajn erarojn, IFERROR Vlookup estas la vojo por iri. Sed ĝi povas esti malprudenta tekniko en multaj situacioj.
Ekzemple, se vi kreis nomitan gamon por viaj tabelaj datumoj, kaj misliterumis tiun nomon en viaVserĉa formulo, IFERARO kaptos #NOMO? eraro kaj anstataŭigu ĝin per "Ne trovita" aŭ ajna alia teksto kiun vi liveras. Kiel rezulto, vi eble neniam scias, ke via formulo liveras malĝustajn rezultojn krom se vi mem ekvidas la tajperaron. En tia kazo, pli racia aliro estus kapti nur #N/A-erarojn. Por ĉi tio, uzu IFNA VLookup-formulon en Excel 2013 kaj pli, SE ESTAS VLOOKUP en ĉiuj Excel-versioj.
La malsupra linio estas: estu tre singarda kiam vi elektas kunulon por via VLOOKUP-formulo :)
Nestigi IFERROR ene de VLOOKUP por ĉiam trovi ion
Imagu la sekvan situacion: vi serĉas specifan valoron en listo kaj ne trovas ĝin. Kiajn elektojn vi havas? Aŭ ricevu N/A eraron aŭ montru vian propran mesaĝon. Efektive, ekzistas tria opcio - se via ĉefa vserĉo stumblas, tiam serĉu ion alian, kiu certe estas tie!
Prenante nian ekzemplon plu, ni kreu ian panelon por niaj uzantoj, kiu montros al ili etendon. nombro de specifa oficejo. Io tia:
Do, kiel vi tiras la etendon el kolumno B surbaze de la oficejo-numero en D2? Kun ĉi tiu regula Vlookup formulo:
=VLOOKUP($D$2,$A$2:$B$7,2,FALSE)
Kaj ĝi funkcios bele tiel longe kiel viaj uzantoj enigos validan nombron en D2. Sed kio se uzanto enigas iun numeron kiu ne ekzistas? En ĉi tiu kazo, ili voku la centran oficejon! Por tio, vi enigas la supran formulon en la valora argumento de IFERROR, kaj metu alian Vserĉon en la argumenton value_if_eraro .
La kompleta formulo estas iom longa, sed ĝi funkcias perfekte:
=IFERROR(VLOOKUP("office "&$D$2,$A$2:$B$7,2,FALSE),VLOOKUP("central office",$A$2:$B$7,2,FALSE))
Se la oficeja numero estas trovita, la uzanto ricevas la respondan etendaĵon:
Se la oficejo numero ne estas trovita, la centra oficejo etendo montriĝas:
Por fari la formulon iom pli kompakta, vi povas uzi alian metodon:
Unue, kontrolu ĉu la nombro en D2 ĉeestas en la serĉkolumno (bonvolu rimarki, ke ni agordas col_index_num al 1 por ke la formulo serĉu kaj redonu valoron el kolumno A): VLOOKUP(D2,$A$2:$B$7,1,FALSE)
Se la specifita oficejo numero ne estas trovita, tiam ni serĉas la ĉenon "centra oficejo", kiu certe estas en la serĉlisto. Por tio, vi envolvas la unuan VLOOKUP en IFERARO kaj nestas ĉi tiun tutan kombinaĵon ene de alia funkcio VLOOKUP:
=VLOOKUP(IFERROR(VLOOKUP(D2,$A$2:$B$7,1,FALSE),"central office"),$A$2:$B$7,2)
Nu, iomete malsama formulo, la sama rezulto:
Sed kia estas la kialo serĉi "centra oficejo", vi povas demandi min. Kial ne provizi la etendaĵon rekte en IFERROR? Ĉar la etendaĵo eble ŝanĝiĝos iam en la estonteco. Se ĉi tio okazas, vi devos ĝisdatigi viajn datumojn nur unufoje en la fonta tabelo, sen zorgi pri ĝisdatigo de ĉiu el viaj VLOOKUP-formuloj.
Kiel fari sinsekvajn VLOOKUP en Excel
En situacioj kiam vi bezonasplenumi la tielnomitajn sinsekvajn aŭ ĉenitajn Vlookups en Excel laŭ ĉu antaŭa serĉo sukcesis aŭ malsukcesis, nestu du aŭ pli da IFERROR-funkcioj por ruli viajn Vlookups unu post unu:
SE ERARO(V SERĈU( ...), SE ERARO(VSERĈO( ...), SE ERARO(VSERĈO( ...),"Ne trovita")))La formulo funkcias kun la sekva logiko:
Se la unua VLOOKUP ne trovas ion, la unua IFERARO kaptas eraron kaj ruligas alian VSERĈU. Se la dua VLOOKUP malsukcesas, la dua IFERARO kaptas eraron kaj ruligas la trian VLOOKUP, kaj tiel plu. Se ĉiuj Vserĉoj stumblas, la lasta IFERARO resendas vian mesaĝon.
Ĉi tiu nestita IFERARO-formulo estas precipe utila kiam vi devas Vserĉi tra multoblaj folioj kiel montrite en la suba ekzemplo.
Ni diru, ke vi havas tri listojn de homogenaj datumoj en tri malsamaj laborfolioj (oficejaj numeroj en ĉi tiu ekzemplo), kaj vi volas ricevi etendon por certa nombro.
Supozinte, ke la serĉvaloro estas en ĉelo A2. en la nuna folio, kaj la serĉa gamo estas A2:B5 en 3 malsamaj laborfolioj (Norda, Suda kaj Okcidento), la sekva formulo funkcias tre bone:
=IFERROR(VLOOKUP(A2,North!$A$2:$B$5,2,FALSE), IFERROR(VLOOKUP(A2,South!$A$2:$B$5,2,FALSE), IFERROR(VLOOKUP(A2,West!$A$2:$B$5,2,FALSE),"Not found")))
Do, nia "ĉenita". La formulo "Vlookups" serĉas en tri malsamaj folioj en la ordo, en kiu ni nestis ilin en la formulo, kaj alportas la unuan kongruon, kiun ĝi trovas:
Jen kiel vi uzas IFERROR kun VLOOKUP en Excel. Mi dankas vin pro legado kaj esperas vidi vinen nia blogo venontsemajne!
Haveblaj elŝutoj
Excel IFERARO VLOOKUP formulekzemploj