Excel formula: pridobite zadnji vnos po mesecih in letih -

Kazalo

Splošna formula

=LOOKUP(2,1/(TEXT(dates,"mmyy")=TEXT(A1,"mmyy")),values)

Povzetek

Za iskanje zadnjega vnosa v tabeli po mesecih in letih lahko uporabite funkcijo LOOKUP s funkcijo TEXT. V prikazanem primeru je formula v F5:

=LOOKUP(2,1/(TEXT($B$5:$B$13,"mmyy")=TEXT(E5,"mmyy")),$C$5:$C$13)

kjer B5: B13 in E5: E7 vsebujejo veljavne datume, C5: C13 pa zneske.

Pojasnilo

Opomba: lookup_value of 2 je namerno večja od katere koli vrednosti v lookup_vector, po konceptu bignum.

Delo od znotraj navzven, izraz:

(TEXT($B$5:$B$13,"mmyy")=TEXT(E5,"mmyy"))

generira nize, kot je "0117", z uporabo vrednosti v stolpcih B in E, ki se nato primerjajo med seboj. Rezultat je matrika, kot je ta:

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

kjer TRUE predstavlja datume v istem mesecu in letu. Število 1 se nato deli s to matriko. Rezultat je niz bodisi 1 bodisi napake deljene z nič (# DIV / 0!):

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

ki gre v LOOKUP kot iskalno polje. LOOKUP predpostavlja, da so podatki razvrščeni po naraščajočem vrstnem redu in se vedno približno ujemajo. Ko iskalne vrednosti 2 ni mogoče najti, se bo LOOKUP ujemal s prejšnjo vrednostjo, zato se bo iskanje ujemalo z zadnjo enoto v matriki.

Nazadnje LOOKUP vrne ustrezno vrednost v result_vector, ki vsebuje zneske v C5: C13.

Zanimive Članki...