Excel-kaava: Hae viimeisin merkintä kuukausittain ja vuodelta -

Sisällysluettelo

Yleinen kaava

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

Yhteenveto

Voit etsiä taulukon viimeisen merkinnän kuukausittain ja vuodelta käyttämällä LOOKUP-funktiota TEXT-toiminnon kanssa. Esitetyssä esimerkissä kaava kohdassa F5 on:

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

missä B5: B13 ja E5: E7 sisältävät kelvolliset päivämäärät ja C5: C13 sisältää määrät.

Selitys

Huomaa: 2: n hakuarvo on tarkoituksellisesti suurempi kuin mikään hakuvektorin arvo, noudattaen bignumin käsitettä.

Työskentelemällä sisältä ulospäin, lauseke:

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

generoi merkkijonot kuten "0117" käyttämällä sarakkeiden B ja E arvoja, joita sitten verrataan toisiinsa. Tuloksena on tällainen taulukko:

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

jossa TOSI edustaa saman kuukauden ja vuoden päivämääriä. Numero 1 jaetaan sitten tällä taulukolla. Tuloksena on joko 1: n tai jako nollavirheillä (# DIV / 0!):

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

joka siirtyy LOOKUP-hakutaulukkoon. LOOKUP olettaa, että tiedot on lajiteltu nousevassa järjestyksessä ja tekee aina likimääräisen vastaavuuden. Kun hakuarvoa 2 ei löydy, LOOKUP vastaa edellistä arvoa, joten haku vastaa matriisin viimeistä yhtä.

Lopuksi LOOKUP palauttaa vastaavan arvon tulos_vektorissa, joka sisältää määrät kohdassa C5: C13.

Mielenkiintoisia artikkeleita...