Hallo Archon2k5,
ich denke, du meinst mich und du wunderst dich, dass es funktioniert.
Der entscheidende Teil ist der Part in der Klammer. Dort steht ja im Prinzip: "(EndeZeit ist kleiner als AnfangsZeit)". Das Ergebnis dieses Vergleichs ist ein WAHR oder FALSCH. FALSCH ist aber nur eine andere Schreibweise für 0 (Null) uns WAHR kann durch 1 ersetzt werden.
So, nun hast du beispielsweise diese Werte: 10:00 bis 15:00, dann ist die EndeZeit nicht kleiner als die AnfangsZeit, also wird gerechnet: 15:00 + (0) - 10:00. Bei 21:00 bis 3:00 sieht das dann so aus: 3:00 + (1) - 10:00, was dann wiederum das korrekte Ergebnis ergibt.
Das Ganze funktioniert, weil Excel jeden Datums- und Zeitwert intern als ganz normale (Nachkomma-) Zahl darstellt. Jeder Tag seit dem 1.1.1900 ist ein ganzer Tag, also hat den Wert 1. Heute, am 17. Januar 2009 ist beispielsweise der 39830. Tag. Uhrzeiten sind ja immer ein Teil des Tages und werden entsprechend als Nachkommazahl gerechnet. So ist mittags um 12:00 Uhr der halbe Tag um, also 0,5. 6:00 in der Frühe ist entsprechend 1/4, also 0,25, und so weiter.
Gibst du nun 18:00 (als Zeit) in eine Zelle ein, dann rechnet Excel intern mit 0,75. Du arbeitest nun bis 3:00 am nächsten Tag, das entspricht 0,125. Nach meiner Formel rechnet Excel nun: 0,125 + (1) - 0,75, also 1,25 -0,75, was einen halben Tag ergibt.
Schreib doch mal
=1,25 -0,75 in eine Zelle in Excel und
Format>Zellen>Uhrzeit und du kommst auf "High Noon".
Ach ja, du scheinst genau so ein Nachtschwärmer wie ich zu sein, wenn ich mir die Uhrzeit deiner Antwort ansehe.
Schönes WE!