Ich habe einen Fehler gemacht aber erstmal versuche ich die grundsätzliche Funktion zu erklären.
Im Prinzip sind es vier verschachtelte WENN-Funktionen mit jeweils einer Wahrheitsprüfung.
- N13=„B“
- K13*L13
- UND(N13=„P“;L13-K13>=9)
- N13=„P“
-
Dürfte klar sein.
-
War ursprünglich ODER(K13="";L13="") um zu prüfen ob in beiden Zellen etwas steht. Mögliche Wahrheitswerte sind 0 (falsch) und 1 (wahr). Wenn Excel als Ergebnis einen Wahrheitswert erwartet, funktioniert allerdings für falsch <=0 und für wahr >=1. Das Ergebnis wird also im Prinzip auf den entsprechenden Wahrheitswert gerundet. Wenn nun K13*L13 gerechnet wird, kommt entweder eine Zahl >1 raus oder 0. Der einzige Unterschied ist, dass die längere Version der Prüfung nur auf eine leere Zelle reagiert und wahr ist wenn eine der Zellen leer ist, während die kürzere auch mit der Eingabe 0 funktionieren würde und wahr ist wenn keine der Zellen leer ist.
-
UND() gibt nur wahr aus wenn beide Ergebnisse wahr sind.
-
Da 3. gültig ist wenn N13=„P“ ist und das Ergebnis >= 9 ist, wird hier nur noch eine Prüfung benötigt ob N13=„P“ ist, da das Ergebnis zwangweise <9 ist.
Mein Fehler: Ich habe bei 3. (L1324)-(K1324)>=9) durch (L13-K13>=9) ersetzt. Das kommt natürlich nicht auf das korrekte Ergebnis, demnach wäre meine korrigierte Formel:
=WENN(N13="B";(L13-K13)+"5:00";WENN(K13*L13;WENN(UND(N13="P";L13*24-K13*24>=9);(L13-K13)-"0:45";WENN(N13="P";(L13-K13)-"0:30";(L13-K13)));""))
Hinweis: Wenn N13 nichts anderes als „B“ oder „P“ als Wert haben kann, könnte man sogar noch die Prüfungen N13=„P“ weglassen.