Excel-formel: Få sista posten per månad och år -

Innehållsförteckning

Generisk formel

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

Sammanfattning

För att slå upp den sista posten i en tabell efter månad och år kan du använda LOOKUP-funktionen med TEXT-funktionen. I exemplet som visas är formeln i F5:

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

där B5: B13 och E5: E7 innehåller giltiga datum och C5: C13 innehåller mängder.

Förklaring

Obs: Lookup_value av 2 är medvetet större än alla värden i lookup_vector, enligt begreppet bignum.

Arbetar inifrån och ut, uttrycket:

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

genererar strängar som "0117" med hjälp av värdena i kolumn B och E, som sedan jämförs med varandra. Resultatet är en array som denna:

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

där SANT representerar datum i samma månad och år. Nummer 1 divideras sedan med denna matris. Resultatet är en matris med antingen 1 eller delas med nollfel (# DIV / 0!):

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

som går in i LOOKUP som uppslagsmatris. LOOKUP antar att data sorteras i stigande ordning och alltid matchar ungefär. När uppslagsvärdet 2 inte kan hittas kommer LOOKUP att matcha det tidigare värdet, så uppslaget matchar den sista 1 i matrisen.

Slutligen returnerar LOOKUP motsvarande värde i result_vector, som innehåller beloppen i C5: C13.

Intressanta artiklar...