AW: Prüfen, ob ein Datum innerhalb eines Datumsbereichs liegt
17.12.2025 12:12:38
Alwin Weisangler
oder ein einem Rutsch alles. In Zelle D1:
=LET(xA; 3;xAnm; A2:A100;xEin; B2:B100;xAus; C2:C100;xLz; MAX(WENN((xAnm>"")+(xEin>"")+(xAus>""); ZEILE(xAnm)-ZEILE(A2)+1));xB; DATUM(JAHR(MIN(xAnm)); MONAT(MIN(xAnm)); 1);xC; DATUM(JAHR(MAX(xAus)); MONAT(MAX(xAus)); 1);xMon; EDATUM(xB; SEQUENZ(1; MONAT(xC)-MONAT(xB)+xA; 0; 1));xSp; SPALTEN(xMon);xD; xMon;xRowIndex; SEQUENZ(xLz; 1; 1; 1);xMatrix;MATRIXERSTELLEN(xLz;xSp;LAMBDA(pI;pJ;LET(a; INDEX(xAnm; pI);b; INDEX(xEin; pI);d; INDEX(xAus; pI);m; INDEX(xMon; pJ);WENNNV(WENNS(UND(MONAT(a) = MONAT(m); MONAT(b) > MONAT(m)); "A";UND(MONAT(b) = MONAT(m); MONAT(d) >= MONAT(m)); "S");"-"))));VSTAPELN(xD; xMatrix))
Das kann man noch als benutzerdefinierte Formel in den den Namanesmanager packen.
In den Namenmanager:
Name: TeilnahmeAuswerten
Formel:
=LAMBDA(AnzahlÜberhang;SpalteAnmeldung;SpalteEintritt;SpalteAustritt;LET(xLz; MAX(WENN((SpalteAnmeldung>"")+(SpalteEintritt>"")+(SpalteAustritt>""); ZEILE(SpalteAnmeldung)-ZEILE(Tabelle1!A2)+1));xB; DATUM(JAHR(MIN(SpalteAnmeldung)); MONAT(MIN(SpalteAnmeldung)); 1);xC; DATUM(JAHR(MAX(SpalteAustritt)); MONAT(MAX(SpalteAustritt)); 1);xMon; EDATUM(xB; SEQUENZ(1; MONAT(xC)-MONAT(xB)+AnzahlÜberhang; 0; 1));xSp; SPALTEN(xMon);xD; xMon;xRowIndex; SEQUENZ(xLz; 1; 1; 1);xMatrix;MATRIXERSTELLEN(xLz;xSp;LAMBDA(pI;pJ;LET(a; INDEX(SpalteAnmeldung; pI);b; INDEX(SpalteEintritt; pI);d; INDEX(SpalteAustritt; pI);m; INDEX(xMon; pJ);WENNNV(WENNS(UND(MONAT(a) = MONAT(m); MONAT(b) > MONAT(m)); "A";UND(MONAT(b) = MONAT(m); MONAT(d) >= MONAT(m)); "S");"-"))));VSTAPELN(xD; xMatrix)))
In Zelle D1: =TeilnahmeAuswerten(3;A2:A4;B2:B4;C2:C4)
Gruß Uwe