Excel formula: Potražite najnoviju cijenu -

Generička formula

=LOOKUP(2,1/(item="hat"),price)

Sažetak

Da biste potražili najnoviju cijenu proizvoda na popisu, poredanu tako da se najnovije stavke pojave posljednje, možete upotrijebiti formulu koja se temelji na funkciji LOOKUP. U primjeru emisije formula u G7 je:

=LOOKUP(2,1/(item=F7),price)

gdje je stavka imenovani raspon B5: B12, cijena je imenovani raspon D5: D12, a podaci se sortiraju uzlazno prema datumu.

Obrazloženje

Funkcija LOOKUP pretpostavlja da su podaci razvrstani i uvijek se približno podudaraju. Ako je vrijednost pregleda veća od svih vrijednosti u nizu pretraživanja, zadano ponašanje je "vraćanje" na prethodnu vrijednost. Ova formula iskorištava ovo ponašanje stvaranjem niza koji sadrži samo 1 i pogreške, a zatim namjerno traži vrijednost 2, koja nikada neće biti pronađena.

Prvo se ocjenjuje ovaj izraz:

item=F7

Kada F7 sadrži "sandale", rezultat je niz TRUE i FALSE vrijednosti poput ove:

(FALSE;TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE)

Ovaj je niz naveden kao djelitelj na 1:

1/(FALSE;TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE)

Matematička operacija automatski prisiljava vrijednosti TRUE i FALSE na 1s i 0s, pa je rezultat sljedeći niz poput ovog:

(#DIV/0!;1;#DIV/0!;1;#DIV/0!;#DIV/0!;1;#DIV/0!)

vratio se izravno u funkciju LOOKUP kao argument vektora traženja.

Primijetite da niz sadrži samo dvije jedinstvene vrijednosti: pogrešku podijeli s nulom (# DIV / 0!) I broj 1.

LOOKUP pretražuje niz vrijednosti 2, zanemarujući vrijednosti pogreške. Ne pronalazeći 2, vraća se na posljednju 1, na poziciju 7 u tražilici. LOOKUP zatim vraća 7. stavku u vektoru rezultata (imenovani raspon "cijena"), vrijednost 15.

Da biste pročitali više o konceptu namjernog traženja vrijednosti koja se nikada neće pojaviti, pročitajte o BigNumu.

Zanimljivi članci...