Формула на Excel: Получете първи запис по месец и година -

Съдържание

Обща формула

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

Обобщение

За да търсите първия запис в таблица по месец и година, можете да използвате и формула за масив, базирана на функциите INDEX, MATCH и TEXT.

функцията LOOKUP с функцията TEXT. В показания пример формулата във F5 е:

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

където "запис" е наименуваният диапазон C5: C13, "дата" е наименуваният диапазон B5: B13, а E5 съдържа валидна дата.

Това е формула на масив и трябва да се въведе с control + shift + enter.

Обяснение

Забележка: Стойностите в E5: E7 са действителни дати, форматирани с персонализиран формат на числото "mmyy".

Работейки отвътре навън, изразът:

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

използва функцията TEXT за генериране на масив от низове във формат "mmyy":

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

които се сравняват с един низ на базата на стойността в E5, "0117". Резултатът е масив от TRUE / FALSE стойности:

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

които се подават във функцията MATCH като справочен масив, със справочна стойност TRUE и тип съвпадение нула за точно съвпадение. В режим на точно съвпадение функцията MATCH връща позицията на първата TRUE в масива, която е 1 във формулата във F5. Тази позиция влиза в INDEX като номер на ред, с масив, базиран на посочения диапазон "запис":

=INDEX(entry,1)

Index връща елемента вътре в записа на посочената позиция.

Забележка: ако даден запис не е намерен за даден месец и година, тази формула ще върне # N / A.

Първо влизане въз основа на днешната дата

За да получите първия запис за даден месец и година въз основа на днешната дата, можете да адаптирате формулата, за да използвате функцията ДНЕС вместо стойността в E5:

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

Интересни статии...