Excel-formel: Få første oppføring etter måned og år -

Innholdsfortegnelse

Generisk formel

(=INDEX(entry,MATCH(TRUE,TEXT(date,"mmyy")=TEXT(A1,"mmyy"),0)))

Sammendrag

For å slå opp den første oppføringen i en tabell etter måned og år, kan du bruke og matriseformel basert på INDEKS-, MATCH- og TEKST-funksjonene.

LOOKUP-funksjonen med TEXT-funksjonen. I eksemplet vist er formelen i F5:

=INDEX(entry,MATCH(TRUE,TEXT(date,"mmyy")=TEXT(E5,"mmyy"),0))

der "oppføring" er det navngitte området C5: C13, "dato" er det navngitte området B5: B13, og E5 inneholder en gyldig dato.

Dette er en matriseformel, og må angis med kontroll + skift + enter.

Forklaring

Merk: verdiene i E5: E7 er faktiske datoer, formatert med det tilpassede tallformatet "mmyy".

Arbeider fra innsiden og ut, uttrykket:

MATCH(TRUE,TEXT(date,"mmyy")=TEXT(E5,"mmyy")

bruker TEKST-funksjonen til å generere en rekke strenger i formatet "mmyy":

("0117"; "0117"; "0117"; "0217"; "0217"; "0217"; "0317"; "0317"; "0317")

som sammenlignes en enkelt streng basert på verdien i E5, "0117". Resultatet er en matrise med SANNE / FALSE verdier:

(SANT; SANT; SANN; FALSK; FALSK; FALSK; FALSK; FALSK; FALSK)

som mates inn i MATCH-funksjonen som oppslagsmatrise, med en oppslagsverdi på SANT, og en samsvarstype null for eksakt samsvar. I nøyaktig samsvarsmodus returnerer MATCH-funksjonen posisjonen til den første SANNE i matrisen, som er 1 i formelen i F5. Denne posisjonen går inn i INDEKS som radnummer, med en matrise basert på det navngitte området "oppføring":

=INDEX(entry,1)

Indeks returnerer varen i oppføringen på den angitte posisjonen.

Merk: hvis en oppføring ikke ble funnet for en gitt måned og et år, returnerer denne formelen # N / A.

Første oppføring basert på dagens dato

For å få den første oppføringen for en gitt måned og et år basert på dagens dato, kan du tilpasse formelen til å bruke TODAY-funksjonen i stedet for verdien i E5:

(=INDEX(entry,MATCH(TRUE,TEXT(date,"mmyy")=TEXT(TODAY(),"mmyy"),0)))

Interessante artikler...