Excel vzorec: Získajte prvý záznam podľa mesiaca a roku -

Všeobecný vzorec

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

Zhrnutie

Ak chcete vyhľadať prvý záznam v tabuľke podľa mesiaca a roku, môžete použiť a zoskupiť vzorec založený na funkciách INDEX, MATCH a TEXT.

funkciu LOOKUP s funkciou TEXT. V zobrazenom príklade je vzorec v F5:

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

kde „záznam“ je pomenovaný rozsah C5: C13, „dátum“ je pomenovaný rozsah B5: B13 a E5 obsahuje platný dátum.

Toto je vzorec poľa a musí byť zadaný pomocou klávesov Control + Shift + Enter.

Vysvetlenie

Poznámka: Hodnoty v E5: E7 sú skutočné dátumy, formátované pomocou vlastného formátu čísel „mmyy“.

Pri práci zvnútra smerom von výraz:

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

používa funkciu TEXT na vygenerovanie poľa reťazcov vo formáte "mmyy":

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

ktoré sa porovnávajú jeden reťazec na základe hodnoty v E5, „0117“. Výsledkom je pole hodnôt TRUE / FALSE:

(PRAVDA; PRAVDA; PRAVDA; NEPRAVDA; NEPRAVDA; NEPRAVDA; NEPRAVDA; NEPRAVDA; NEPRAVDA)

ktoré sa vkladajú do funkcie MATCH ako vyhľadávacie pole s vyhľadávacou hodnotou TRUE a nulovým typom zhody pre presnú zhodu. V režime presnej zhody funkcia MATCH vráti pozíciu prvej TRUE v poli, ktorá je vo vzorci v F5 1. Táto pozícia ide do INDEXU ako číslo riadku s poľom založeným na pomenovanom rozsahu „záznam“:

=INDEX(entry,1)

Register vráti položku vo vnútri záznamu na zadanú pozíciu.

Poznámka: ak sa položka pre daný mesiac a rok nenájde, tento vzorec vráti # N / A.

Prvý vstup založený na dnešnom dátume

Ak chcete získať prvý záznam pre daný mesiac a rok na základe dnešného dátumu, môžete upraviť vzorec tak, aby namiesto hodnoty v E5 používal funkciu DNES:

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

Zaujímavé články...