Exceli valem: Hangi viimase vaste lahter sisaldab -

Üldine valem

=LOOKUP(2,1/SEARCH(things,A1),things)

Kokkuvõte

Lahtri kontrollimiseks mitmest asjast ja loendis leitud viimase vaste tagastamiseks võite kasutada valemit, mis põhineb funktsioonidel LOOKUP ja OTSI. Leitud mitme vaste korral tagastab valem "asjade" loendist viimase vaste.
Näidatud näites on valem C5-s:

=LOOKUP(2,1/SEARCH(things,B5),things)

Selgitus

Kontekst: teil on nimekiri asjadest nimega vahemikus "asjad" (E5: E8) ja soovite kontrollida veerus B lahtritest, kas need sisaldavad neid asju. Kui jah, siis soovite tagastada leitud asjadest viimase üksuse.

Selles valemis kasutatakse funktsiooni SEARCH veerus B lahtrite otsimiseks järgmiselt:

SEARCH(things,B5)

Kui OTSI leiab vaste, tagastab see vaste asukoha otsitavas lahtris. Kui otsing ei leia vastet, tagastab vea #VALUE. Kuna me otsime SEARHile rohkem kui ühte asja, annab see rohkem kui ühe tulemuse. Näidatud näites tagastab SEARCH hulga tulemusi:

(8;24;#VALUE!;#VALUE!)

Seejärel kasutatakse seda massiivi numbri 1 jagajana. Tulemuseks on massiiv, mis koosneb vigadest ja kümnendväärtustest. Vead tähistavad asju, mida ei leitud, ja kümnendarvud tähistavad leitud asju. Näidatud näites näeb massiiv välja selline:

(0.125;0.0416666666666667;#VALUE!;#VALUE!)

See massiiv toimib funktsiooni LOOKUP "otsingu_vektorina". Otsingu väärtus esitatakse numbrina 2 ja tulemusvektoriks nimetatakse vahemikku "asjad". See on nutikas osa.

Valem on üles ehitatud nii, et otsinguvektor ei sisalda kunagi suuremat väärtust kui 1, samas kui otsingu väärtus on 2. See tähendab, et otsingu väärtust ei leita kunagi. Sellisel juhul sobib LOOKUP massiivi viimase arvväärtusega, mis vastab viimasele SEARCHi leitud "asjale".

Lõpuks, kasutades tulemusvektorina tarnitud nimega vahemikku "asjad", tagastab LOOKUP viimati leitud asja.

Kõvakodeeritud väärtustega

Selliste vahemike nagu "asjad" kasutamine muudab otsinguterminite loendi muutmise (ja otsinguterminite lisamise) lihtsaks, kuid see pole kohustuslik. Väärtused saate ka kodeerida otse sellisesse valemisse:

=LOOKUP(2,1/SEARCH(("red","blue","green"),B5),("red","blue","green"))

Huvitavad Artiklid...