(Excel 2008) Überstunden berechnen

wie meinst du das?

ich kapiere die Formel noch nicht ganz...ich kann dort noch nicht einmal erkennen wo steht, dass er ab 00Uhr Sonntagsstunden zählt...welcher Part steht dafür?
 
Wie lange sagtest du hast du noch mal für die Formeln gebraucht um dies so super zu verstehen :-)
 
Okay, was ist die Bedingung, dass du von Samstag in den Sonntag reingearbeitet hast?

a) der aktuelle Tag ist ein Samstag, denn nur dann kannst du über Nacht in den Sonntag reinarbeiten
b) die Endzeit liegt nach 0:00 Uhr, also eben am Tag nach Samstag => Sonntag​

Beides überprüfst du wie folgt:

  1. a) überprüfst du mit WOCHENTAG(B15)=7. Ist diese Aussage wahr, dann ist der aktuelle Tag ein Samstag (und du kannst unter Umständen bis Sonntag arbeiten).
  2. b) überprüfst du mit D15<0,5 (0,5 steht für 12:00 Uhr). Wenn du von Samstag nicht bis Sonntag arbeitest, dann ist deine Endzeit spätestens 23:59 (als Dezimalzahl irgendwas mit 0,999). Wenn deine Endzeit aber kleiner als 0,5 ist (D15<0,5), dann bedeutet das, dass du vor 12:00 Uhr aufgehört hast und damit muss deine Endzeit wohl am Sonntag sein. Also ist alles, was nach 0:00 Uhr liegt die Zeit, die Sonntag gearbeitet wurde. Wenn deine Endzeit (Zelle D15) 5:00 Uhr ist, dann hast du am Sonntag auch 5:00 Stunden gearbeitet.

    Wenn du nur Nachtschicht arbeitest, dann kann deine Endzeit am Samstag logischerweise nur irgendwas spät abends – also noch am gleichen Tag sein, oder früh morgens am Sonntag. Also ist eine Zeit früher als 12:00 automatisch bereits Sonntag. Natürlich könnte man statt 12:00 Uhr auch 9:00 Uhr oder 10:00 Uhr einsetzen (0,38 oder 0,42 statt 0,5).

    Wenn es aber sein kann, dass du am Samstag mit der Arbeit beginnst und auch am Samstag vor 12:00 aufhörst, dann würde die Formel nicht funktionieren, weil dann eine Zeit vor 12:00 Uhr ja gar nicht Sonntag wäre. Dann muss man eben überlegen: wann würdest du frühestens Samstag aufhören und wann spätestens Sonntag.

    Wenn du also bspw. Samstag auch mal frühestens um 12:00 Uhr Schluss machen kannst aber von Samstag auf Sonntag maximal bis 8:00 Uhr früh arbeitest, dann müsste man prüfen ob die Endzeit zwischen 8:00 Uhr und 12:00 Uhr liegt. Denn Samstag hörst du ja frühestens um 12:00 auf und Sonntag spätestens um 8:00. Also braucht man eine Zeit zwischen 8:00 und 12:00, die als Grenzen gelten kann (bspw. 9:00 oder 10:00 Uhr; 0,38 oder 0,42 als Dezimalzahl).


    Wenn es jetzt ganz blöd läuft – dass du also Samstag zu arbeiten beginnst und auch am Samstag bspw. um 6:00 aufhörst aber von Samstag bis Sonntag auch bis 8:00 arbeiten kannst, dann kann man das so nicht überprüfen. Allerdings dürfte es so einen Fall kaum geben. Wenn du Samstag mal um 6:00 Uhr aufhörst, hast du in der Regel wohl bereits am Freitag angefangen – die Zeiten stehen also in einer Zeile, die ein Freitag ist -, damit stimmt aber die Wochentags-Abfrage (WOCHENTAG(B15)=7) nicht und damit wird es nicht fälschlicherweise als Sonntagsarbeitszeit gewertet.


Du musst also wissen

  • was wäre die früheste Samstags-Endzeit und
  • was wäre die späteste Samstag-bis-Sonntag-Endzeit.

Irgendwo dazwischen liegt die Grenze für die Formel.


Die Formel noch mal in Worten:

Wenn (heute Samstag ist UND die Endzeit (D15) kleiner als deine Grenze ist) ; DANN schreibe die Endzeit (D15) hin ; SONST lass die Zelle leer.
(die Endzeit von 5:00 Uhr entspräche ja wie gesagt 5:00 Stunden Arbeit am Sonntag).​


Ergibt also:
=WENN(UND(WOCHENTAG(B15)=7;D15<deine Grenze);D15;"")​


Ich hoffe, das war halbwegs verständlich :)


Wie lange sagtest du hast du noch mal für die Formeln gebraucht um dies so super zu verstehen :-)
Keine Ahnung, man fängt halt irgendwann mal mit Excel an und dann ergibt sich das mit der Zeit von selbst.

Der grundsätzliche Aufbau einer Formel ist ja immer identisch: =FUNKTIONSNAME(Argument1;Argument2;Argument 3;…) wobei es unterschiedlich viele Argumente geben kann, das hängt von der jeweiligen Funktion ab. Ein Argument kann eine Zahl sein, ein Text (der in Anführungszeichen stehen muss), eine oder mehrere Zellen oder auch eine ganze Funktion.

_____________________________________________________


Bei einer Summen-Funktion hast du als Funktionsname SUMME und als Argumente die Summanden: =SUMME(1. Summand;2. Summand;3. Summand) oder =SUMME(Zelle1;Zelle2;Zelle3) – konkret bspw. =SUMME(1;4;12) oder =SUMME(A1;B3;C45). Zusammenhängende Zellbereiche kann man mit einem Doppelpunkt angeben, um nicht =SUMME(A1;A2;A3;A4;A5;A6) schreiben zu müssen. Da genügt =SUMME(A1:A6), also quasi A1 bis A6.

Alternativ könnte man natürlich ganz normal rechnen: = 1+4+12 oder =A1+B3+C45 oder =A1+A2+A3+A4+A5+A6 (aber =A1:A6 geht hier, ohne Summen-Funktion, nicht).

_____________________________________________________


Bei der Wenn-Funktion hast du als Funktionsname WENN und drei Argumente:

  • eine Bedingung (bspw. ob eine Zelle einen bestimmten Wert enthält)
  • eine dann-Anweisung die eintritt, wenn die Bedingung erfüllt wurde bzw. wenn die Bedingung wahr ist
  • eine sonst-Anweisung die eintritt, wenn die Bedingung nicht erfüllt wurde bzw. wenn die Bedingung falsch ist

In Worten:

=WENN(Bedingung;Dann;Sonst)
=WENN(Zelle A1 größer 5;dann gib 1 aus;sonst gib 0 aus)​

Konkret:

=WENN(A1>5;1;0)​

Damit hast du aber nur eine Bedingung (A1>5), in deinem Fall musst du zwei Bedingungen überprüfen: ist der Wochentag ein Samstag UND ist deine Endzeit kleiner als eine bestimmte Uhrzeit. Dazu braucht man eben noch die Und-Funktion.

_____________________________________________________


Die Und-Funktion ist nur dann wahr, wenn alle Argumente die du angibst wahr sind. Argument 1 UND Argument 2 müssen erfüllt sein. Andernfalls ist die Und-Funktion falsch. Die Argumente der Und-Funktion kannst du auch als Bedingung 1 und Bedingung 2 ansehen.

Die Und-Funktion kannst du auch alleine testen – also nicht verschachtelt in einer Wenn-Funktion. Bspw. steht in Zelle A1 der Wert 5 und in Zelle A2 der Wert 7. Mit der Funktion =UND(A1=5;A2<10) prüfst du ob die Zelle A1 gleich 5 ist und ob die Zelle A2 kleiner als 10 ist. In diesem Fall würdest du in der Zelle, in der du die Und-Funktion geschrieben hast als Ergebnis WAHR erhalten. Die Funktion =UND(A1<5;A2=7) gibt den Wert FALSCH zurück, da A1 ja nicht kleiner als 5 sondern gleich 5 ist. Die zweite Bedingung A2=7 wäre zwar wahr, aber es müssen ja beide Bedingungen erfüllt werden!


Die gesamte Und-Funktion mit ihren beiden Bedingungen ist die Bedingung der Wenn-Funktion:

=WENN(Bedingung;Dann;Sonst)
=WENN(UND(Bedingung1;Bedingung2);Dann;Sonst)​

Somit hast du zwei Bedingungen die erfüllt sein müssen, damit die Wenn-Funktion den Wert von 'Dann' ausgibt. Ist eines der beiden Argumente oder beide Argumente in der Und-Funktion falsch ist die gesamt Und-Funktion falsch, und damit deine Bedingung in der Wenn-Funktion. Als Ergebnis bekäme man also den Wert von 'Sonst'.

_____________________________________________________


Bei der Wochentags-Funktion hast du als Funktionsname WOCHENTAG und als Argument ein Datum (bzw. eine Zelle, die ein Datum enthält) von dem der Wochentag ermittelt werden soll bzw. der dem Wochentag zugeordnete Wert von 1 (Sonntag) bis 7 (Samstag). Alternativ kannst du bei dieser Funktion auch ein zweites Argument angeben, um selbst zu bestimmen ob der Wert 1 Sonntag oder Montag zugeordnet sein soll – das ist bei dir aber nicht notwendig. Ob der Samstag der Zahl 7 entspricht oder der Zahl 5 ist grundsätzlich egal, du musst halt dementsprechend prüfen: ist WOCHENTAG(Zelle) gleich 7 oder andernfalls ist WOCHENTAG(Zelle) gleich 5. Je nachdem, was du als Samstag definiert hast. Standardmäßig - wenn du kein zweites Argument angibst - ist in Excel Samstag eben der Wert 7 zugeordnet.

Die Wochentags-Funktion mit dem Vergleich =7 ist eine der beiden Bedingungen deiner Und-Funktion (die zweite Bedingung ist D15<0,5):

=UND(Bedingung1;Bedingung2)
=UND(WOCHENTAG(B15)=7;D15<0,5)

Gesamt:
=WENN(UND(WOCHENTAG(B15)=7;D15<0,5);Dann;Sonst)​

_____________________________________________________


Was bedeuten die ganzen Zeichen?


Mit Klammern gibst du einfach an, von wo bis wo eine Funktion geht:

=UND(..;..)
=WENN(..;..;..)
=WOCHENTAG(..)​

Wenn du das ganze verschachtelst, dann müssen alle Klammern erhalten bleiben (außerdem brauchst du immer nur ein '='-Zeichen ganz am Anfang der 'Gesamt'-Funktion).

=WENN(UND(WOCHENTAG(..);..);..;..)


Strichpunkte ; trennen die einzelnen Argumente.

Doppelpunkte : geben einen Zellbereich an. Also A1:A6 (A1 bis A6) oder B3:C6 (die Zellen B3, B4, B5, B6, C3, C4, C5, C6).


Alles andere was noch in der Formel rumgurkt, sind entweder einfache Rechenzeichen (Subtrahieren: -, Addieren: +, Dividieren: /, Multiplizieren: *) oder Vergleichoperatoren (ist gleich: =, größer: >, kleiner: <, größer gleich: >=, kleiner gleich: <=, ungleich: <>). Bei Text braucht es wie gesagt noch Anführungszeichen:

=WENN(Bedingung;Dann schreibe …; sonst schreibe …)
=WENN(A1="text";"In Zelle A1 steht der Text text";"In Zelle A1 steht irgendwas, aber nicht text")​

_____________________________________________________


Man könnte das ganze aber auch mit der Oder-Funktion machen (nur mal so als Beispiel).

Die Oder-Funktion ist wahr, wenn ein einziges oder mehrere/alle Argumente/Bedingungen wahr sind.

=ODER(Argument1;Argument2;Argument3;…)​

Wie würde das nun funktionieren? Beide Bedingungen in deiner Formel müssen ja erfüllt sein. Ist eine oder beide Bedingungen falsch, ist die Gesamt-Bedingung der Wenn-Funktion nicht erfüllt. Mit der Oder-Funktion könnte man dann fragen: ist Bedingung 1 ODER Bedingung 2 falsch? Sobald eine Bedingung falsch ist – der Tag ist kein Samstag ODER die Uhrzeit ist nicht kleiner als 12:00 Uhr – hast du also am Sonntag nicht gearbeitet.

Dazu musst du einfach alle Bedingungen "umkehren" und deine Dann- und Sonst-Ausgabe vertauschen:

Wenn (heute KEIN Samstag ist ODER die Endzeit NICHT kleiner (also größer gleich) als deine Grenze ist) ; DANN lass die Zelle leer; SONST schreibe die Endzeit hin
=WENN(ODER(WOCHENTAG(B15)<>7;D15>=0,5;"";D15)​
 
Zuletzt bearbeitet:
Also wie viele Funktionen gibt es denn dann... Summe,Wenn,Oder,Und,Wochentag die 5? oder noch mehr?

Ich meine das Alles irgendwo zu verstehen, was du geschrieben hast aber wenn ich jetzt wissen möchte wieviel Sonntagsstunden ich NUR am Sonntag habe...also ich fange erst Sonntag an und höre entweder Sonntag wieder auf oder arbeite in den Montag hinein muss ich dann den Wochentag (7 Samstag) ändern? oder wird nur mit der Zahl 7 gearbeitet...mit den Wochentagen das verstehe ich noch nicht...
 
5? Wäre vielleicht gut, wenn man sich nicht mehr Funktionen mit auseinander setzen muss. Aber schlecht, wenn man etwas gaaaaanz anderes berechnen möchte :D

Excel bietet ca. 60 Funktionen an, sei es für mathematische Probleme, Statistik, Text, Datum & Zeit, ...

Die meisten davon wirst du wohl nie sehen, aber mehr als 5 sollten einem dann und wann schon begegnen.


Klick mal in Excel neben der Bearbeitungsleiste auf das kleine fx (aufpassen, dass in dem Moment keine Zelle ausgewählt ist, in der eine Funktion steht):
excel_funktionsliste.jpg

Es erscheint ein Fenster, wo du in der Liste Alle auswählst. Dann siehst du alle Funktionen, die Excel bereithält :)
excel_funktionsliste_alle.jpg



Zum Wochentag.

Die Funktion WOCHENTAG() ermittelt zu einem beliebigen Datum den Wochentag. Allerdings nicht in Form von Montag, Dienstag, ... sondern als Zahl von 1 bis 7.

Jede Zahl ist einem Tag zugeordnet, Sonntag entspricht der Zahl 1, Montag der Zahl 2, ..., Samstag der Zahl 7 (das ließe sich wie oben schon erwähnt ändern). Schau dir mal die Wochentag-Funktion alleine an, ohne Wenn- oder Und-Funktion:

Nimm deine Stundentabelle, November und schreibe in irgendeine leere Zelle: =WOCHENTAG(B15). Du erhälst den Wert 7, für Samstag. Die Funktion =WOCHENTAG(B16) liefert 1, für Sonntag; =WOCHENTAG(B17) liefert 2 für Montag usw.


Um herauszufinden, ob ein Datum ein Samstag ist musst du eben überprüfen, ob bei der Funktion WOCHENTAG(ZelleX) der Wert 7 herauskommt. Also muss der Funktionswert mit 7 verglichen werden.

Schreibe: =WOCHENTAG(B15)=7

Du erhälst als Ausgabe: WAHR, denn =WOCHENTAG(B15) liefert ja den Wert 7, und das ist gleich 7. Für alle anderen Wochentage erhälst du FALSCH.


Wenn du überprüfen willst, ob der Tag ein Sonntag ist, dann musst du die Funktion mit dem zu Sonntag gehörenden Wert vergleichen. Das ist die 1 (solange du es nicht geändert hast).

Schreibe: =WOCHENTAG(B15)=1

Du erhälst als Ausgabe: FALSCH, denn =WOCHENTAG(B15) liefert ja den Wert 7, und das ist nicht gleich 1.

Für =WOCHENTAG(B16)=1 erhälst du WAHR, denn das ist ein Sonntag (Wert 1).

Wenn du jetzt auf einen Mittwoche prüfen wolltest, dann hieße die Funktion =WOCHENTAG(ZelleX)=4.



Übrigens, wenn du wie oben beschrieben die Funktionsliste über fx aufrufst und mal bei Funktion suchen: einfach Wochentag eintippst und dann auf Suchen (oder OK oder Start) klickst, findest du auch die Wochentags-Funktion. Und darunter eine kurze Beschreibung zur Funktion und ganz unten im Fenster kannst du auch die ausführliche Hilfe zu jeder Funktion aufrufen. Dort wird jedes Argument erklärt und du findest mehrere Zahlenbeispiele zu der Funktion.

excel_hilfe_zu_funktion.jpg
 
Zuletzt bearbeitet:
sorry, dass ich jetzt erst schreibe aber ich muss seit heute wieder arbeiten und bin jetzt erst aus der Arbeit zurück.

Das leuchte mir alles ein und ist eigentlich ganz leicht, sowie du es erklärt hast.

Also muss ich meine Formel einfach erweitern mit der Zahl 1, wenn ich will, dass er auch erkennt das ich Sonntag anfange und die Stunden zählt........
 
oh wenn ich mir die ganzen Formeln bzw. Namen der Formel so anschaue, dann sind meine wahrscheinlich noch die einfachsten...
 
Einfach erweitern geht nicht, da müsste man halt - je nachdem, wie das aussehen soll - z.B. wieder mit einer Wenn-Funktion arbeiten.

Wenn du konkret sagen kannst, was wie berechnet werden soll, überleg ich mir noch mal was.
 
=WENN(UND(D15<0,5;WOCHENTAG(B15)=7);D15*0,5;"0")

also z.B. aus dieser Formel kann ich lesen: wenn die Endzeit kleiner ist als 12Uhr und der Wochentag ein Samstag ist dann schreibt er bzw. nimmt er 50% der Stunden aber wenn dies nicht der Fall ist schreibt er null

Aber ich verstehe einfach noch nicht WO in der Formel geschrieben steht, dass er erst ab null Uhr 50% von den Stunden nimmt
 
ach so und für was steht das UND in dieser Formel?

Wenn das Ende kleiner ist als 12Uhr UND es ein Samstag ist?

oder

Wenn das Ende kleiner ist als 12Uhr es ein Samstag ist UND das Ende verrechnet mit 50% ------ ne oder das erste stimmt was ich geschrieben hab oder? sonst würde ich es jetzt wieder nicht ganz verstehen
 
Ha ich habe meine erste Sonntagsformel alleine hinbekommen und sogar verstanden...ich freu mmich tierisch


aber jetzt habe ich wieder das Problem, dass er mir nur am Sonntag ausrechnet und nicht die Stunden die ich in den Sonntag von Samstag hineinarbeite.........ich weis nicht wie ich die beiden Formeln koppeln kann
 
Das erste stimmt. Der Strichpunkt trennt die beiden Bedingeungen der Und-Funktion:

UND(Bedingung1;Bedingung2) bzw. wie man's spricht: Bedingung1 UND Bedingung 2.

Also: D15<0,5 UND Wochentag ist Samstag.



Die 50% ab 0:00 Uhr kommen einfach aus der Endzeit. Wenn du Sonntags bis 5:00 arbeitest, dann steht bei Endzeit doch genau diese Zeit: 5:00. Wenn du nur bis 1:00 arbeitest steht da eben 1:00.

Also ist deine eingetragene Endzeit doch genau die Zeit, die du am Sonntag arbeitest. Diese Zeit steht in D15, also ist D15*0,5 deine entsprehcende sonntagszeit mal 50%.



Willst du jetzt eine Formel, die sowohl die Samstag-auf-Sonntag-Arbeitszeit ermittelt aber gleichzeitig auch die Arbeitszeit von nur Sonntag (falls du also erst Sonntag beginnst)?
 
Zuletzt bearbeitet:
ach so das hängt auch mit dem Wochentag zusammen oder weil er erkennt, dass ab null Uhr tag 1 ist und ab tag eins zählt er dann oder ?
_________________________________________________________________________________

ja genau so eine Formel brauche ich
 
Das war meine Formel und ich hab sogar kapiert, dass ich am Schluss keine D Zelle sondern eine E Zell nehmen muss...gut für dich währe das natürlich klar aber mir leuchten die Dinge halt jetzt erst nach und nach ein

=WENN(UND(D23>0;WOCHENTAG(B23)=1);E23*0,5;"0")
 
Mh wenn ich den 1. in einem Monat ändere, als zb. letztes Jahr war der erste ein Freitag und dieses Jahr viell. ein Sonntag, dann ändern sich die Formel nicht, also er erkennt die Veränderung von Samstaag und Sonntag nicht. Das heißt er gibt dann in jedem H und E Feld ##WERT## an
 
Willst du jetzt eine Formel, die sowohl die Samstag-auf-Sonntag-Arbeitszeit ermittelt aber gleichzeitig auch die Arbeitszeit von nur Sonntag (falls du also erst Sonntag beginnst)?

Genau so eine Formel brauche ich allerdings kommt dann noch das Problem hinzu, dass die Formel, welche die Nachtstunden ausrechnet, am Sonntag KEINE Nachtstunden ausrechnet bzw. wenn man von Samstag auf Sonntag arbeitet die Formel nur Nachtstunden von Samstag angibt und ab Null Uhr wenn der Sonntag los geht aufhört zurechnen.

'Wei es gibt nur einen Zuschlag ... Nachtzuschlag gibt es immer und wenn Sonntag ist fällt dieser aber weg, weil es dann Sonntagszuschlag gibt.
 
Ich will dich ja nicht noch mehr verwirren, aber noch mal zu der Formel:

Streng genommen erkennt diese nämlich nicht, wann der nächste Tag beginnt. Die Formel weiß nur „heute ist Samstag“. Was danach berechnet wird, ist nur eine Vermutung, und das ist genau das Problem, was ich dir oben erklärt habe.

Angenommen du sagst zu jemandem „ich beginne am Samstag meine Nachtschicht und höre um 5:00 Uhr auf zu arbeiten“. Dann würde derjenige doch vermuten, dass du 5:00 Uhr früh am Sonntagmorgen meinst. Definitiv wissen kann er es aber nicht, nur logisch schlussfolgern.

Excel kann aber nicht mal das - wie auch? Du sagst ja nur, „heute ist Samstag und ich habe um 5:00 Uhr aufgehört zu arbeiten“. Excel weiß weder, dass du Nachtschicht arbeitest, noch könnte Excel aus dieser Information schließen (wenn man es denn irgendwie mitteilen könnte), dass du dann vermutlich spät abends am selben Tag oder aber früh morgens am nächsten Tag aufhörst zu arbeiten.

Darum musst du Excel explizit sagen, wann eine Sonntagszeit berechnet werden soll. Und zwar dann, wenn deine Endzeit vor 12:00 Uhr liegt – denn DU weißt, dass die Endzeit dann am nächsten Tag liegt.

Wie gesagt, wenn du tatsächlich mal Samstag früh um 0:00 anfangen würdest zu arbeiten und auch Samstag um 11:00 wieder aufhörst, dann wird Excel dafür 11:00 Stunden Sonntagsarbeitszeit berechnen, denn Excel weiß nur „heute ist Samstag“ und „die Endzeit liegt vor 12:00 Uhr“.

Da du aber weißt, „ich arbeite nur Nachtschicht, also werde ich irgendwann Samstag Nachmittag oder Abend beginnen, logischerweise muss dann eine Endzeit vor 12:00 Uhr bedeuten, es ist der nächste Tag“ kannst du die Formel so aufstellen.

Die Formel ist eben nicht 100% wasserdicht, da Excel – wenn sich mal an deiner Arbeitszeit etwas ändert – nicht entscheiden kann ist diese Endzeit Samstag oder müsste sie logischerweise Sonntag sein.


Man könnte das ganze noch etwas sicherer gestalten, in dem man die Anfangszeit mit einbezieht, aber wenn du nur Nachtschicht arbeitest, dann ergeben sich keine Probleme. Wirklich sicher könnte man nur sein, wenn du bei jeder Zeit zusätzlich das Datum mit angibst. „Ich habe von: 15.11.2008 14:00 bis 16.11.2008 5:30 gearbeitet“. Dann könnte Excel anhand des Datums herausfinden, „die Endzeit ist definitiv Sonntag“.


___________________________________________________________


So, mir ist gerade noch aufgefallen, dass die normale Arbeitszeitformel zur Ermittlung der Nachtzeit manchmal Blödsinn ausspuckt, drum hab ich sie überarbeitet. So sieht die Formel aber leider schlimmer aus als davor, aber dafür stimmt sie (zumindest stimmt sie öfter als die alte – theoretisch könnte es aber auch hier zu Fehlern kommen, aber nur dann, wenn dein Arbeitsbeginn nach 22:00 Uhr liegt, was – denke ich – nicht der Fall ist. Oder vielleicht doch?).

Formel für G15:
=WENN(UND(C15>$G$12;C15<$G$11;D15>C15;D15<$G$11);0;WENN(UND(C15>$G$12;C15<$G$11;D15>$G$11);D15-$G$11;WENN(UND(C15>$G$12;C15<$G$11;D15<C15;D15<$G$12);1-$G$11+D15;WENN(UND(C15>$G$12;C15<$G$11;D15<C15;D15>$G$12);1-$G$11+$G$12;WENN(UND(C15>$G$11;C15<D15);D15-C15;WENN(UND(C15>$G$11;D15<$G$12);1-C15+D15;WENN(UND(C15>$G$11;D15>$G$12;D15<$G$11);1-C15+$G$12;0)))))))​

Ich denke mal, ich verzichte auf die Erklärung :D (im Grunde wird aber natürlich - wie auch vorher bereits - nur überprüft, wann Arbeitsbeginn und Arbeitsende sind)

___________________________________________________________


Die Formel für die Sonntagszeit ist (noch) nicht ganz so kompliziert :)

Der erste Teil der Sonntagsformel ist einfach der schon bekannte von-Samstag-auf-Sonntag-Arbeitszeit-Teil: =WENN(UND(WOCHENTAG(B15)=7;D15<0,5);D15;

Bisher gab es ja die Sonst-Anweisung, die Zelle leer zu lassen, wenn der Tag kein Samstag ist oder die Zeit nicht kleiner als 12:00 Uhr.

Jetzt kommt anstelle der Sonst-Anweisung eine neue Abfrage, ob der Tag vielleicht ein Sonntag ist, denn dann könnte es ja wieder sein, dass du am Sonntag gearbeitet hast. Dabei gibt es jetzt zwei Szenarien die beachtet werden müssen:

  1. du fängst Sonntag an und arbeitest bis Montag durch
  2. du fängst Sonntag an und hörst irgendwann Sonntagabend wieder auf

Nur, wenn das alles nicht zutrifft, soll die Zelle leer bleiben.


Der erste Fall ist vom Prinzip identisch, mit der von-Samstag-auf-Sonntag-Formel. Nur, dass du eben von Sonntag auf Montag und nicht von Samstag auf Sonntag arbeitest. Jetzt interessiert dich außerdem nicht der Zeitraum, am nächsten Tag (Montag), sondern nur die Arbeitszeit von Sonntag. Wenn du bis Montag durcharbeitest, dann geht deine Sonntagszeit ganz einfach von deiner Anfangszeit am Sonntag bis Mitternacht. Also „24:00 Uhr – Anfangszeit“ (24:00 ist als Dezimalzahl 1)

Also lautet der zweite Teil der Sonntagsformel (ohne Wenn außen rum):
(WOCHENTAG(B15)=1;D15<0,5);1-C15​



Im zweiten Fall, fängst du irgendwann Sonntag an und hörst irgendwann Sonntag auf. Deine Arbeitszeit ist dann einfach „Endzeit – Arbeitszeit“; aber wieder mit der Voraussetzung das der Tag auch ein Sonntag ist.

Also lautet der dritte Teil der Sonntagsformel (ohne Wenn außen rum):
(WOCHENTAG(B15)=1);D15-C15​



Jetzt muss man nur alles zusammenbasteln. Das sieht im ersten Moment vielleicht kompliziert aus, aber wenn man im Kopf immer mitspricht, was die Formel machen soll, dann ist es ganz leicht.

Bisher gab es diese Bedingung1: ist der Wochentag ein Samstag und ist die Zeit kleiner 12:00?
(natürlich sind das eigentlich 2 Bedingungen, aber beide zusammen sind ja die eine Gesamtbedingung für die Wenn-Funktion, also sag ich mal Bedingung1)
WENN (die Bedingung1 eintritt; DANN tue etwas; SONST tue etwas anderes)


Jetzt haben wir als erste neue Bedingung2: ist der Wochentag ein Sonntag ist und die Zeit kleiner 12:00?
WENN (die Bedingung1 eintritt; dann tue etwas; SONST WENN (eine andere Bedingung2 eintritt, DANN tue etwas; SONST tue etwas anderes))


Und noch die zweite neue Bedingung3: ist der Wochentag Sonntag?
WENN (die Bedingung1 eintritt; dann tue etwas; SONST WENN (eine andere Bedingung2 eintritt, DANN tue etwas; SONST WENN (eine andere Bedingung3 eintritt, DANN tue etwas; SONST tue etwas anderes))


Konkret in Worten (aus Platzgründen untereinander):
Code:
WENN(heute Samstag ist UND die Zeit kleiner als 12:00; DANN schreibe Zeit x; SONST

WENN(heute Sonntag ist UND die Zeit kleiner als 12:00; DANN schreibe Zeit y; SONST

WENN(heute Sonntag ist; DANN schreibe Zeit z; SONST lass die Zelle leer)))



Formel für H15:
=WENN(UND(WOCHENTAG(B15)=7;D15<0,5);D15;WENN(UND(WOCHENTAG(B15)=1;D15<0,5);1-C15;WENN(UND(WOCHENTAG(B15)=1;D15>C15);D15-C15;"")))​

dass die Formel, welche die Nachtstunden ausrechnet, am Sonntag KEINE Nachtstunden ausrechnet bzw. wenn man von Samstag auf Sonntag arbeitet die Formel nur Nachtstunden von Samstag angibt und ab Null Uhr wenn der Sonntag los geht aufhört zurechnen
Kann ich jetzt nicht nachvollziehen bei der Datei, die ich hier habe:

Anhang anzeigen excel.zip

Die Datei rechnet jetzt erstmal alle Nachtstunden sowie Sonntagsstunden aus, ohne irgendwelche Zuschläge. Das müsste doch erstmal passen, oder?

'Wei es gibt nur einen Zuschlag ... Nachtzuschlag gibt es immer und wenn Sonntag ist fällt dieser aber weg, weil es dann Sonntagszuschlag gibt.
Dann musst du wieder prüfen: wenn der Tag ein Sonntag ist, gibt es Sonntagszuschlag, andernfalls gibt es Nachtzuschlag.


Also sowas wie: WENN(WOCHENTAG(..)=1;Sontagszuschlag mal Arbeitszeit;Nachtzuschlag mal Arbeitszeit)
 
Zuletzt bearbeitet:
Das bei der Sonntagsformel bei mir was gefehlt hab wusste ich , ich habe allerdings immer versucht den Rest mit =WENN dran zuhängen....

Bei deiner H15 Formel fehlt jetzt noch, dass es wieder nur 50% Sonntagsstunden sind, ich hab es mal wieder nicht hinbekommen sie einzubauen. Ich hab bestimmt wieder ein Ze3ichen irgenwo vergessen
 
Einfach die entsprechende Zeit mit 0,5 multiplizieren:

=WENN(UND(WOCHENTAG(B15)=7;D15<0,5);D15*0,5;WENN(UND(WOCHENTAG(B15)=1;D15<0,5);(1-C15)*0,5;WENN(UND(WOCHENTAG(B15)=1;D15>C15);(D15-C15)*0,5;"")))

(zusätzliche Klammern wegen Punkt-vor-Strich-Rechnung nicht vergessen)
den Rest mit =WENN dran zuhängen....
Wie schon irgendwo erwähnt (:D) benötigt jede Formel nur ein =-Zeichen zur Einleitung. Jedes andere = dient nur als Vergleichsoperator zwischen zwei Werten.
 
Zuletzt bearbeitet:

Ähnliche Themen

D
Antworten
22
Aufrufe
10.874
DieRenteEnte
D
Zurück
Oben