Formula Excel: obțineți ultima intrare după lună și an -

Cuprins

Formula generică

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

rezumat

Pentru a căuta ultima intrare dintr-un tabel în funcție de lună și an, puteți utiliza funcția CĂUTARE cu funcția TEXT. În exemplul prezentat, formula din F5 este:

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

unde B5: B13 și E5: E7 conțin date valide, iar C5: C13 conține sume.

Explicaţie

Notă: valoarea de căutare a lui 2 este în mod deliberat mai mare decât orice valori din căutarea_vector, urmând conceptul de bignum.

Lucrând din interior spre exterior, expresia:

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

generează șiruri precum „0117” folosind valorile din coloana B și E, care sunt apoi comparate între ele. Rezultatul este o matrice ca aceasta:

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

unde TRUE reprezintă date din aceeași lună și an. Numărul 1 este apoi împărțit la această matrice. Rezultatul este o matrice de 1 sau divizare la zero erori (# DIV / 0!):

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

care intră în CAUTARE ca matrice de căutare. LOOKUP presupune că datele sunt sortate în ordine crescătoare și întotdeauna se potrivește aproximativ. Când valoarea căutării 2 nu poate fi găsită, LOOKUP va corespunde cu valoarea anterioară, astfel căutarea va coincide cu ultima 1 din matrice.

În cele din urmă, LOOKUP returnează valoarea corespunzătoare în result_vector, care conține sumele din C5: C13.

Articole interesante...