„Zu viele Argumente“ mit der WENN-Funktion in Excel

„Zu viele Argumente“ mit der WENN-Funktion in Excel

Ich erhalte immer die Fehlermeldung, dass zu viele Funktionen vorhanden sind. Ich versuche Folgendes zu erreichen: WENN in einer bestimmten Spalte (Montag bis Sonntag) Stunden aufgeführt sind, nehme ich das Datum (in Zelle Y1) abzüglich der korrekten Anzahl von Tagen. Warum funktioniert das nicht?

=IF(M3<>"", $Y$1-6, "",IF(N3<>"", $Y$1-5, "", IF(O3<>"", $Y$1-4, "",IF(P3<>"", $Y$1-3, "",IF(Q3<>"", $Y$1-2, "", IF(R3<>"", $Y$1-1, "",IF(S3<>"", $Y$1, "")))))))

Antwort1

Das verschachtelte IF wird an die FALSE-Position des übergeordneten IF eingefügt:

=IF(M3<>"", $Y$1-6,IF(N3<>"", $Y$1-5,IF(O3<>"", $Y$1-4,IF(P3<>"", $Y$1-3,IF(Q3<>"", $Y$1-2, IF(R3<>"", $Y$1-1,IF(S3<>"", $Y$1,"")))))))

Dennoch können wir es sicherlich noch schlanker gestalten:

=$Y$1-7-MATCH(TRUE,INDEX(M3:S3<>"",),0)

Der INDEX gibt ein Array von TRUE/FALSE an den MATCH zurück. Der MATCH gibt die relative Position des ersten TRUE in diesem Array zurück. Wir subtrahieren das von 7, um den richtigen Wert zu erhalten, der von Y1 abgezogen werden muss.

verwandte Informationen