
Генеричка формула
=LOOKUP(2,1/SEARCH(things,A1),things)
Резиме
Да бисте проверили у ћелији једну од неколико ствари и вратили последње подударање нађено на листи, можете користити формулу засновану на функцијама ЛООКУП и СЕАРЦХ. У случају пронађеног више подударности, формула ће вратити последње подударање са листе „ствари“.
У приказаном примеру, формула у Ц5 је:
=LOOKUP(2,1/SEARCH(things,B5),things)
Објашњење
Контекст: имате списак ствари у именованом опсегу „ствари“ (Е5: Е8) и желите да проверите ћелије у колони Б да ли садрже те ствари. Ако је то случај, желите да вратите последњу ставку из „ствари“ која је пронађена.
У овој формули, функција СЕАРЦХ се користи за претрагу ћелија у колони Б овако:
SEARCH(things,B5)
Када СЕАРЦХ пронађе подударање, враћа положај подударања у ћелији која се претражује. Када претрага не може да пронађе подударање, враћа грешку #ВАЛУЕ. Будући да СЕАРХ-у дајемо више ствари које треба тражити, вратиће више резултата. У приказаном примеру, СЕАРЦХ враћа низ резултата попут овог:
(8;24;#VALUE!;#VALUE!)
Овај низ се затим користи као делитељ броја 1. Резултат је низ састављен од грешака и децималних вредности. Грешке представљају ствари које нису пронађене, а децималне вредности представљају ствари које су пронађене. У приказаном примеру низ изгледа овако:
(0.125;0.0416666666666667;#VALUE!;#VALUE!)
Овај низ служи као „лоокуп_вецтор“ за функцију ЛООКУП. Вредност претраживања даје се као број 2, а вектор резултата је именовани опсег „ствари“. Ово је паметан део.
Формула је конструисана на такав начин да вектор претраживања никада неће садржавати вредност већу од 1, док је вредност тражења 2. То значи да вредност тражења никада неће бити пронађена. У овом случају, ЛООКУП ће одговарати последњој нумеричкој вредности пронађеној у низу, што одговара последњој „ствари“ коју је пронашао СЕАРЦХ.
Коначно, користећи именовани опсег „ствари“ испоручене као вектор резултата, ЛООКУП враћа последњу пронађену ствар.
Са тешко кодираним вредностима
Коришћење опсега попут „ствари“ олакшава модификовање листе појмова за претрагу (и додавање додатних појмова за претрагу), али то није услов. Такође можете тврдо кодирати вредности директно у формулу попут ове:
=LOOKUP(2,1/SEARCH(("red","blue","green"),B5),("red","blue","green"))