Excel-Formel: Feiertage zwischen zwei Daten auflisten

Inhaltsverzeichnis

Generische Formel

(=TEXTJOIN(", ",TRUE,IF(dates>=start,IF(dates<=end,holidays,""),"")))

Zusammenfassung

Um Feiertage aufzulisten, die zwischen zwei Daten liegen, können Sie eine Formel verwenden, die auf den Funktionen TEXTJOIN und IF basiert.

In dem gezeigten Beispiel lautet die Formel in F8:

(=TEXTJOIN(", ",TRUE,IF(B4:B12>=F5,IF(B4:B12<=F6,C4:C12,""),"")))

Dies ist eine Array-Formel und muss mit Strg + Umschalt + Eingabe eingegeben werden.

Erläuterung

Auf hoher Ebene verwendet diese Formel eine verschachtelte IF-Funktion, um ein Array von Feiertagen zwischen zwei Daten zurückzugeben. Dieses Array wird dann von der TEXTJOIN-Funktion verarbeitet, die das Array mit einem Komma als Trennzeichen in Text konvertiert.

Wir arbeiten von innen nach außen und generieren das Array der passenden Feiertage mithilfe einer verschachtelten IF:

IF(B4:B12>=F5,IF(B4:B12<=F6,C4:C12,""),"")

Wenn die Daten in B4: B12 größer oder gleich dem Startdatum in F5 sind und wenn die Daten in B4: B12 kleiner oder gleich dem Enddatum in F6 sind, gibt IF eine Reihe von Feiertagen zurück. Im gezeigten Beispiel sieht die Liste folgendermaßen aus:

(""; ""; "Presidents Day"; "Memorial Day"; ""; ""; ""; ""; "")

Dieses Array wird dann als text1- Argument an die TEXTJOIN-Funktion übergeben , wobei das Trennzeichen auf "," gesetzt ist und ignore_empty TRUE ist. Die Funktion TEXT JOIN verarbeitet die Elemente im Array und gibt eine Zeichenfolge zurück, bei der jedes nicht leere Element durch ein Komma plus Leerzeichen getrennt ist.

Hinweis: Die TEXTJOIN-Funktion ist eine neue Funktion, die in Office 365 und Excel 2019 verfügbar ist.

Interessante Beiträge...