Excel-formel: Få sidste post efter måned og år -

Indholdsfortegnelse

Generisk formel

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

Resumé

For at slå den sidste post i en tabel op efter måned og år, kan du bruge LOOKUP-funktionen med TEXT-funktionen. I det viste eksempel er formlen i F5:

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

hvor B5: B13 og E5: E7 indeholder gyldige datoer, og C5: C13 indeholder beløb.

Forklaring

Bemærk: opslagsværdien af ​​2 er bevidst større end nogen værdier i opslagsvektoren efter begrebet bignum.

Arbejder indefra og ud, udtrykket:

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

genererer strenge som "0117" ved hjælp af værdierne i kolonne B og E, som derefter sammenlignes med hinanden. Resultatet er en matrix som denne:

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

hvor SAND repræsenterer datoer i samme måned og år. Nummeret 1 divideres derefter med denne matrix. Resultatet er en matrix af enten 1 eller divider med nul fejl (# DIV / 0!):

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

som går ind i LOOKUP som opslagsarray. LOOKUP antager, at data er sorteret i stigende rækkefølge og altid matcher omtrentligt. Når opslagsværdien på 2 ikke kan findes, vil LOOKUP matche den forrige værdi, så opslag vil matche den sidste 1 i matrixen.

Endelig returnerer LOOKUP den tilsvarende værdi i result_vector, som indeholder beløbene i C5: C13.

Interessante artikler...