Enhavtabelo
La lernilo klarigas la vektorajn kaj tabelajn formojn de la funkcio SERĈO de Excel kaj montras tipajn kaj ne-bagalajn uzojn de SERĈO en Excel kun formulokzemploj.
Unu el la plej oftaj demandoj. ke ĉiu Excel-uzanto demandas foje estas jene: " Kiel mi serĉas valoron sur unu folio kaj tiri kongruan valoron al alia folio? ". Kompreneble, povas esti multaj varioj de la baza scenaro: vi eble serĉas la plej proksiman kongruon prefere ol ĝustan kongruon, vi eble volas serĉi vertikale en kolumno aŭ horizontale en vico, taksi unu aŭ plurajn kriteriojn, ktp. , la esenco estas la sama - vi devas scii kiel serĉi en Excel.
Microsoft Excel provizas kelkajn malsamajn manierojn fari serĉon. Komence, ni lernu funkcion, kiu estas desegnita por trakti la plej simplajn kazojn de vertikala kaj horizontala serĉado. Kiel vi povas facile diveni, mi parolas pri la funkcio SERĈO.
Excel-funkcio SERĈO - sintakso kaj uzoj
Je la plej baza nivelo, la funkcio SERĈO en Excel. serĉas valoron en unu kolumno aŭ vico kaj resendas kongruan valoron de la sama pozicio en alia kolumno aŭ vico.
Estas du formoj de SERĈO en Excel: Vektoro kaj Tabelo. . Ĉiu formo estas klarigita individue malsupre.
Excel SERĈA funkcio - vektora formo
En ĉi tiu kunteksto, vektoro rilatas al unu-kolumna aŭ unu-vica gamo.formulo faras la laboron:
=LOOKUP(VLOOKUP(E2, $A$2:$C$7, 3, FALSE), {"c";"d";"t"}, {"Completed";"Development";"Testing"})
Kiel pruvite en la ekrankopio malsupre, la formulo retrovas la projektan statuson de la serĉtabelo kaj anstataŭigas mallongigon per la responda vorto:
Konsileto. Se vi uzas Excel 2016 kiel parto de abono de Office 365, vi povas uzi la SWITCH-funkcion por similaj celoj.
Mi esperas, ke ĉi tiuj ekzemploj elmetis iom da lumo pri kiel funkcias la funkcio LOOKUP. Por pli bone kompreni la formulojn, vi bonvenas elŝuti ĉi tiujn ekzemplojn de Excel Lookup. En la sekva lernilo, ni diskutos kelkajn aliajn manierojn fari serĉon en Excel kaj klarigos, kiu Serĉformularo estas plej bona por esti uzata en kiu situacio. Mi dankas vin pro legado kaj esperas vidi vin en nia blogo venontsemajne!
Sekve, vi uzas la vektoran formon de SERĈO por serĉi unu vicon aŭ unu kolumnon de datumoj por difinita valoro, kaj tiri valoron el la sama pozicio en alia vico aŭ kolumno.La sintakso de la vektora Serĉo estas jene:
SERĈU(serĉa_valoro, serĉvektoro, [rezulta_vektoro])Kie:
- Serĉa_valoro (postulata) - valoro por serĉi. Ĝi povas esti nombro, teksto, logika valoro de VERA aŭ FALSA, aŭ referenco al ĉelo enhavanta la serĉvaloron.
- Serĉvektoro (postulata) - unu-vico aŭ unu-kolumna intervalo serĉenda. Ĝi devas esti ordigita en kreska ordo .
- Vektoro_rezulta (laŭvola) - unu-vico aŭ unu-kolumna gamo el kiu vi volas redoni la rezulton - valoro en la sama pozicio kiel la serĉvaloro. Rezulta_vektoro devas esti la sama grandeco kiel serĉa_gamo . Se ellasita, la rezulto estas resendita de serĉa_vektoro .
La sekvaj ekzemploj montras du simplajn serĉformulojn en ago.
Vertikala serĉformulo - serĉu en unu- kolumna gamo
Ni diru, vi havas liston de vendistoj en kolumno D (D2:D5) kaj la produktoj kiujn ili vendis en kolumno E (E2:E5). Vi kreas panelon, kie viaj uzantoj enmetos la nomon de la vendisto en B2 kaj vi bezonas formulon, kiu tirus respondan produkton en B3. La tasko povas esti facile plenumita per ĉi tiu formulo:
=LOOKUP(B2,D2:D5,E2:E5)
Por pli bone kompreni laargumentoj, bonvolu rigardi ĉi tiun ekrankopion:
Horizontala serĉformulo - serĉu en unuvica gamo
Se viaj fontaj datumoj havas horizontalan aranĝon, t.e. la enskriboj loĝas en vicoj prefere ol kolumnoj, tiam liveras unuvican gamon en la argumentoj lookup_vector kaj result_vector , jene:
=LOOKUP(B2,E1:H1,E2:H2)
En la dua parto de ĉi tiu lernilo, vi trovos kelkajn pliajn ekzemplojn de Excel Lookup, kiuj solvas pli kompleksajn taskojn. Dume, bonvolu memori la jenajn simplajn faktojn, kiuj helpos vin preteriri eblajn erarojn kaj malhelpi oftajn erarojn.
5 aferoj, kiujn vi devus scii pri vektora formo de Excel SERĈO
- Valoroj en lookup_vector devus esti ordigita en sukcesanta ordo , t.e. de plej malgranda al plej granda aŭ de A ĝis Z, alie via Excel Serĉformularo povas resendi eraron aŭ malĝustan rezulton. Se vi bezonas serĉi neordigitajn datumojn , tiam uzu aŭ INDEX-MATACH aŭ OFFSET-MATCH.
- Serĉa_vektoro kaj rezulta_vektoro devas esti unu-vico aŭ unu-kolumna gamo de la sama grandeco.
- La SERĈU-funkcio en Excel estas majuskle-malsentema , ĝi ne diferencas majuskla kaj minuskla teksto.
- Excel LOOKUP funkcias surbaze de proksimuma kongruo . Pli precize, Serĉformularo unue serĉas ĝustan kongruon. Se ĝi ne povas trovi la serĉan valoron ĝuste, ĝi serĉas la sekvan plej malgrandanvaloro , t.e. la plej granda valoro en lookup_vector kiu estas malpli ol aŭ egala al lookup_value .
Ekzemple, se via serĉvaloro estas "5", la formulo serĉos ĝin unue. Se "5" ne estas trovita, ĝi serĉos "4". Se "4" ne estas trovita, ĝi serĉos "3", kaj tiel plu.
- Se serĉa_valoro estas pli malgranda ol la plej malgranda valoro en lookup_vector , Excel LOOKUP liveras la #N/A eraro.
Excel LOOKUP-funkcio - tabelformo
La tabelformo de la SERĈO-funkcio serĉas la specifitan valoron en la unua kolumno aŭ vico de la tabelo kaj prenas valoron el la sama pozicio en la lasta kolumno aŭ vico de la tabelo.
La tabelo Serĉu havas 2 argumentojn, kiuj ambaŭ estas postulataj:
SERĈO( serĉo_valoro, tabelo)Kie:
- Serĉa_valoro - valoro por serĉi en tabelo.
- Tabelo - a gamo da ĉeloj, kie vi volas serĉi la serĉvaloron. La valoroj en la unua kolumno aŭ vico de la tabelo (depende de ĉu vi faras V-serĉon aŭ H-serĉon) devas esti ordigitaj en kreskanta ordo. Majuskloj kaj minusklaj signoj estas konsiderataj ekvivalentaj.
Ekzemple, kun la vendistaj nomoj troviĝas en la unua kolumno de la tabelo (kolumno A) kaj mendaj datoj en la lasta kolumno de la tabelo (kolumno C) , vi povas uzi la jenan formulon por serĉi la nomon kaj tiri la kongruan daton:
=LOOKUP(B2,D2:F5)
Noto. La tabelformo de laExcel-SERVO-funkcio ne devus esti konfuzita kun Excel-tabelformuloj. Kvankam ĝi funkcias sur tabeloj, SERĈO ankoraŭ estas regula formulo, kiu estas kompletigita laŭ la kutima maniero premante la Enigu klavon.
4 aferoj, kiujn vi devus scii pri tabelformo de Excel SERĈO
- Se tabelo havas pli da vicoj ol kolumnoj aŭ la saman nombron da kolumnoj kaj vicoj , Serĉformularo serĉas en la unua kolumno (horizontala serĉo).
- Se tabelo havas pli da kolumnoj ol vicoj , Excel SERĈO serĉas en la unua vico (vertikala serĉo). ).
- Se formulo ne povas trovi la serĉvaloron, ĝi uzas la plej grandan valoron en la tabelo kiu estas malpli ol aŭ egala al serĉa_valoro .
- Se la serĉa valoro estas pli malgranda ol la plej malgranda valoro en la unua kolumno aŭ vico de la tabelo (depende de la tabelaj dimensioj), Serĉformularo liveras la #N/A eraron.
Grava noto! La funkcieco de la tabelformo de Excel LOOKUP estas limigita kaj ni ne rekomendas uzi ĝin. Anstataŭe, vi povas uzi la funkcion VLOOKUP aŭ HLOOKUP, kiuj estas la plibonigitaj versioj por fari vertikalan kaj horizontalan serĉon, respektive.
Kiel uzi la funkcion LOOKUP en Excel - formulekzemploj
Kvankam ekzistas pli potencaj funkcioj por serĉi kaj kongrui en Excel (kiu estas la temo de nia sekva lernilo), SERĈO utilas en multaj situacioj, kaj la sekvaj ekzemplojpruvi kelkajn ne-trivialajn uzojn. Bonvolu noti, ke ĉiuj subaj formuloj uzas la vektoran formon de Excel SERĈO.
Serĉu valoron en la lasta nemalplena ĉelo en kolumno
Se vi havas kolumnon de dinamike loĝita. datumoj, vi eble volas elekti la plej lastatempe aldonitan eniron, t.e. ricevi la lastan nemalplenan ĉelon en kolumno. Por tio, uzu ĉi tiun ĝeneralan formulon:
SERĈU(2, 1/( kolumno ""), kolumno )En la supra formulo, ĉiuj argumentoj krom la kolumna referenco estas konstantoj. Do, por preni la lastan valoron en specifa kolumno, vi nur bezonas provizi la respondan kolumnan referencon. Ekzemple, por ĉerpi la valoron de la lasta nemalplena ĉelo en kolumno A, uzu ĉi tiun formulon:
=LOOKUP(2, 1/(A:A""), A:A)
Por akiri la lastan valoron de aliaj kolumnoj, modifi la kolumnreferencojn kiel montrite. en la ekrankopio malsupre - unua referenco estas la kolumno por kontroli por malplenaj/neblankaj ĉeloj, kaj la dua referenco estas la kolumno por redoni la valoron de:
Kiel ĉi tiu formulo funkcias
En la argumento serĉa_valoro , vi provizas 2 aŭ ajnan alian nombron pli grandan ol 1 (post momento, vi komprenos kial).
En la
1>lookup_vector argumento, vi metas ĉi tiun esprimon: 1/(A:A"")
- Unue, vi plenumas la logikan operacion A:A"" kiu komparas ĉiun ĉelon en kolumno A kun malplena ĉeno kaj liveras VERA por malplenaj ĉeloj kaj FALSE por nemalplenaj ĉeloj. En lasupra ekzemplo, la formulo en F2 redonas ĉi tiun tabelon: {VERA;VERA;VERA;VERA;FALSA...
- Tiam oni dividas la nombron 1 per ĉiu elemento de la supra tabelo. Kun VERA egalanta al 1 kaj FALSE egalanta al 0, vi ricevas novan tabelon konsistantan el 1 kaj #DIV/0! eraroj (la rezulto de divido per 0), kaj ĉi tiu tabelo estas uzata kiel lookup_vector . En ĉi tiu ekzemplo, ĝi estas {1;1;1;1;#DIV/0!...
Nun, kiel okazas, ke la formulo liveras la lastan nemalplenan valoron en kolumno , ĉar serĉa_valoro ne kongruas kun iu ajn elemento de serĉa_vektoro ? La ŝlosilo por kompreni la logikon estas, ke Excel LOOKUP serĉas kun proksimuma kongruo, t.e. kiam la preciza serĉvaloro ne estas trovita, ĝi kongruas kun la sekva plej granda valoro en serĉa_vektoro kiu estas pli malgranda ol serĉa_valoro . En nia kazo, serĉa_valoro estas 2 kaj la plej granda valoro en serĉa_vektoro estas 1, do SERĈO kongruas kun la lasta 1 en la tabelo, kiu estas la lasta nemalplena ĉelo!
En la argumento result_vector , vi referencas la kolumnon el kiu vi volas redoni valoron, kaj via Serĉformulo ricevos la valoron en la sama pozicio kiel la serĉvaloro.
Konsileto. Se vi volas ricevi la nombron de la vico tenanta la lastan valoron, tiam uzu la funkcion ROW por retrovi ĝin. Ekzemple: =LOOKUP(2,1/(A:A""),ROW(A:A))
Serĉu valoron en la lasta nemalplena ĉelo en vico
Se viaj fontaj datumoj estas aranĝitaj en vicoj prefereol kolumnoj, vi povas akiri la valoron de la lasta nemalplena ĉelo uzante ĉi tiun formulon:
SERĈO(2, 1/( vico ""), vico )Fakte, ĉi tiu formulo estas nenio alia ol eta modifo de la antaŭa formulo, kun la nura diferenco, ke vi uzas la vic-referencon anstataŭ la kolumna referenco.
Ekzemple por ricevi la valoron de la lasta nemalplena ĉelo en la vico 1, uzu ĉi tiun formulon:
=LOOKUP(2, 1/(1:1""), 1:1)
La sekva ekrankopio montras la rezulton:
Akiri valoron asociita kun la lasta eniro en vico
Per nur iom da kreemo, la supra formulo facile povas esti personecigita por solvi aliajn similajn taskojn. Ekzemple, ĝi povas esti uzata por ricevi valoron asociitan kun la lasta okazo de specifa valoro en vico. Ĉi tio povas soni iom malklara, sed la sekva ekzemplo faciligos la komprenon.
Supozinte ke vi havas resuman tabelon kie kolumno A enhavas la vendistajn nomojn kaj postaj kolumnoj enhavas datumojn de iu speco por ĉiu monato. En ĉi tiu ekzemplo, ĉelo enhavas "jes" se donita vendisto fermis almenaŭ unu interkonsenton en difinita monato. Nia celo estas ricevi monaton asociita kun la lasta "jes" eniro sinsekve.
La tasko povas esti solvita uzante la jenan SERĈO-formulon:
=LOOKUP(2, 1/(B2:H2="yes"), $B$1:$H$1)
La logiko de la formulo estas esence la sama kiel priskribita en la unua ekzemplo. La diferenco estas, ke vi uzas la "egala al" operatoro ("=") anstataŭ "ne egalaal" ("") kaj funkcii per vicoj anstataŭ kolumnoj.
La sekva ekrankopio montras rezulton:
Serĉu kiel alternativon al nestitaj IF-oj
En ĉiuj serĉformuloj, kiujn ni ĝis nun diskutis, la argumentoj lookup_vector kaj result_vector estis reprezentitaj per intervalreferencoj. Tamen, la sintakso de la Excel-SERĈA funkcio permesas liverante la vektorojn en la formo de vertikala tabelkonstanto, kiu ebligas al vi reprodukti la funkciecon de nestita IF per pli kompakta kaj facile legebla formulo.
Ni diru, vi havas liston de mallongigoj en kolumno A kaj vi volas anstataŭigi ilin per plenaj nomoj, kie "C" signifas "Kompletigita", "D" estas "Evoluo, kaj "T" estas "Testado". La tasko povas esti plenumita per la jena nestita IF-funkcio:
=IF(A2="c", "Completed", IF(A2="d", "Development", IF(A2="t", "Testing", "")))
Aŭ, uzante ĉi tiun Serĉformularon:
=LOOKUP(A2, {"c";"d";"t"}, {"Completed";"Development";"Testing"})
Kiel montrite en la ekrankopio malsupre, ambaŭ formuloj donas identajn rezultojn:
Noto. Por ke Excel Lookup-formulo funkciu ĝuste, la valoroj en lookup_array devus esti ordigitaj de A ĝis Z aŭ de plej malgranda al plej granda.
Se vi tiras valorojn de serĉtabelo, tiam vi povas enigi funkcion Vlookup en la argumenton serĉa_valoro por retrovi kongruon.
Supozinte, ke la serĉvaloro estas en ĉelo E2, la serĉtabelo estas A2:C7, kaj la kolumno de intereso ("Stato") estas la tria kolumno en la serĉtabelo, la jena