Excel vzorec: Získajte ďalšiu naplánovanú udalosť -

Obsah

Všeobecný vzorec

(=MIN(IF((range>=TODAY()),range)))

Zhrnutie

Ak chcete získať nasledujúcu naplánovanú udalosť zo zoznamu udalostí s dátumami, môžete použiť vzorec poľa založený na funkciách MIN a DNES na vyhľadanie nasledujúceho dátumu a INDEX a MATCH na zobrazenie udalosti k danému dátumu. V zobrazenom príklade je vzorec v G6:

(=MIN(IF((date>=TODAY()),date)))

Kde „dátum“ je pomenovaný rozsah D5: D14.

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

Vysvetlenie

Prvá časť riešenia využíva funkcie MIN a DNES na vyhľadanie „nasledujúceho dátumu“ na základe dnešného dátumu. To sa deje filtrovaním dátumov pomocou funkcie IF:

IF((date>=TODAY()),date)

Logický test vygeneruje pole hodnôt TRUE / FALSE, kde TRUE zodpovedá dátumom väčším alebo rovným dnešku:

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

Ak je výsledok TRUE, dátum sa odovzdá do poľa vráteného IF. Ak je výsledok FALSE, dátum sa nahradí boolovským FALSE. Funkcia IF vráti nasledujúce pole na MIN:

(FALSE;FALSE;FALSE;43371;43385;43399;43413;43427;43441;43455)

Funkcia MIN potom ignoruje FALSE hodnoty a vráti najmenšiu hodnotu dátumu (43371), ktorá je v systéme dátumov programu Excel dátum 28. september 2018.

Získanie názvu filmu

Na zobrazenie filmu spojeného s „nasledujúcim dátumom“ “používame INDEX a MATCH:

=INDEX(movie,MATCH(G6,date,0))

V rámci INDEXU MATCH nájde pozíciu dátumu v G6 v zozname dátumov. Táto pozícia, v príklade 4, sa vráti na INDEX ako číslo riadku:

=INDEX(movie,4)

a INDEX vráti film na tomto mieste „The Dark Knight“.

Všetko v jednom vzorci

Ak chcete vrátiť ďalší film v jednom vzorci, môžete použiť tento vzorec poľa:

(=INDEX(movie,MATCH(MIN(IF((date>=TODAY()),date)),date,0)))

S MINIFS

Ak máte novšiu verziu Excelu, môžete namiesto vzorca poľa v G6 použiť funkciu MINIFS:

=MINIFS(date,date,">="&TODAY())

MINIFS bol predstavený v programe Excel 2016 prostredníctvom služieb Office 365.

Zaobchádzanie s chybami

Vzorec na tejto stránke bude fungovať, aj keď udalosti nebudú zoradené podľa dátumu. Ak však neexistujú žiadne nadchádzajúce dátumy, funkcia MIN vráti namiesto chyby nulu. Toto sa v G6 zobrazí ako dátum „0-január-00“ a vzorec INDEX a MATCH spôsobí chybu # N / A, pretože neexistuje nultý riadok, z ktorého by sa mala získať hodnota. Na zachytenie tejto chyby môžete nahradiť MIN funkciou SMALL a potom zabaliť celý vzorec do IFERROR takto:

=(IFERROR(SMALL(IF((date>=TODAY()),date),1),"None found"))

Na rozdiel od MIN funkcia SMALL spôsobí chybu, keď sa nenájde hodnota, takže na správu chyby je možné použiť IFERROR.

Zaujímavé články...