Probleme bei der Berechnung von Feiertagszuschlägen

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

Harry666
Beiträge: 4
Registriert: Di, 07.01.2020 15:08

Probleme bei der Berechnung von Feiertagszuschlägen

Beitrag von Harry666 »

Hallo,

ich bin neu im Forum und wende mich direkt mit einem Problem an euch.

Ich muss Feiertagszuschläge innerhalb einer Tabelle berechnen. Grundlegend ist diese Tabelle im vorletzten Beitrag hier fast perfekt:
http://www.office-loesung.de/ftopic646526_0_0_asc.php

Die Formeln funktionieren auch super, allerdings möchte ich die Werte nicht im Zeitformat, sondern im Zahlenformat ausgespuckt bekommen ohne zusätzliche Zellen in Beschlag zu nehmen. Dazu habe ich die Formeln geändert, bzw. ergänzt:

Code: Alles auswählen

D2: =REST(C2-B2;1)*24

Code: Alles auswählen

E2: =WENN(UND(ZÄHLENWENN($G$2:$H$10;KÜRZEN(A2+B2+D2));ZÄHLENWENN($G$2:$H$10;A2));D2;WENN(ZÄHLENWENN($G$2:$H$10;KÜRZEN(A2+B2+D2));C2;WENN(ZÄHLENWENN($G$2:$H$10;A2);REST(WENN(C2>B2;C2;1)-B2;1);0)))*24
Im ersten Augenblick scheint es zu funktionieren, aber der Schein trügt. Sobald man aus einem Nichtfeiertag in einen Feiertag hinein arbeitet, zum Beispiel vom 24.12.14 20:00 Uhr bis zum 25.12.14 03:00 Uhr, spuckt die Formel zur Berechnung der Feiertagsstunden 0 aus. Korrekt wären hier natürlich 3 Stunden.
Genauso das Problem, wenn man von einem Feiertag in den nächsten hinein arbeitet, zum Beispiel vom 25.12.14 20:00 Uhr bis zum 26.12.14 03:00 Uhr. Hier berechnet er nun 168 Feiertagsstunden - korrekt wären jedoch 7 Stunden.

Wenn ich die ursprünglichen Formeln und entsprechend Zeitformat verwende, funktioniert alles wie es soll. Es liegt also an meinen Ergänzungen "*24" in den Formeln.

Ich stehe auf dem Schlauch... Help anyone?
mikeleb
*******
Beiträge: 1316
Registriert: Fr, 09.12.2011 16:50

Re: Probleme bei der Berechnung von Feiertagszuschlägen

Beitrag von mikeleb »

Hallo,
da du in der Formel in E2 auch den neuen Wert von D2 verwendest, muss die Formel an diesen Stellen angepasst werden:

Code: Alles auswählen

=WENN(UND(ZÄHLENWENN($G$2:$H$10;KÜRZEN(A2+B2+D2/24));ZÄHLENWENN($G$2:$H$10;A2));D2;WENN(ZÄHLENWENN($G$2:$H$10;KÜRZEN(A2+B2+D2/24));C2;WENN(ZÄHLENWENN($G$2:$H$10;A2);REST(WENN(C2>B2;C2;1)-B2;1);0)))*24
Gruß,
mikeleb
Harry666
Beiträge: 4
Registriert: Di, 07.01.2020 15:08

Re: Probleme bei der Berechnung von Feiertagszuschlägen

Beitrag von Harry666 »

Stark. Klingt auch absolut logisch.

Ich probiere es zu Hause direkt mal aus und gebe ein Zeichen.

Vielleicht kannst mir in Bezug auf die Formel noch bei zwei anderen Anliegen helfen. :)

1) Die Formel kann man grundlegend ja auch spitze nutzen, um Sonntagsstunden zu berechnen. Kann man diesen Teil der Formel

Code: Alles auswählen

$G$2:$H$10
durch „jeder Sonntag des Jahres“ ersetzen, ohne extra irgendwo in der Tabelle alle Sonntage aufzuführen und darauf Bezug zu nehmen?

2) Über Weihnachten sollen die Feiertagsstunden etwas anders berechnet werden. Und zwar nicht ganztägig, sondern vom 24.12. 14 Uhr bis zum 27.12. 08 Uhr.
Vermutlich müsste man das dann in einer separaten Spalte machen, weil sonst du kompliziert für eine Formel.
Hast du eine Idee?
mikeleb
*******
Beiträge: 1316
Registriert: Fr, 09.12.2011 16:50

Re: Probleme bei der Berechnung von Feiertagszuschlägen

Beitrag von mikeleb »

Hallo,
zu 1) sieh' dir mal die Funktion Wochentag() an
zu 2) hier https://de.openoffice.info/viewtopic.php?t=66579 findest du eine, praktisch alle Fälle erfassende Lösung
Gruß,
mikeleb
Harry666
Beiträge: 4
Registriert: Di, 07.01.2020 15:08

Re: Probleme bei der Berechnung von Feiertagszuschlägen

Beitrag von Harry666 »

Die Formel für die Feiertage funktioniert. Vielen Dank dafür schon mal!

1) Die Funktion Wochentag haben ich mir tatsächlich schon mal angesehen, nur lassen meine Laienfähigkeiten keine Fehleranalyse zu.

Code: Alles auswählen

=WENN(UND(ZÄHLENWENN(WOCHENTAG(1; [1];KÜRZEN(A2+B2+D2/24));ZÄHLENWENN(WOCHENTAG(1; [1];A2));D2;WENN(ZÄHLENWENN(WOCHENTAG(1; [1];KÜRZEN(A2+B2+D2/24));C2;WENN(ZÄHLENWENN(WOCHENTAG(1; [1];A2);REST(WENN(C2>B2;C2;1)-B2;1);0)))*24
2) Das übersteigt meinen Tabellen-Horizont leider vollends. Ich würde die Berechnung gern so einfach wie nur möglich halten, ohne irgendwelche Zwischenberechnungen und Hilfszellen.
Ich habe eine verlässlich funktionierende Formel, welche die Stunden zwischen einem definierten Zeitraum berechnet. Das funktioniert allerdings bisher nur ohne spezifischen Bezug auf bestimmte Tage. Sie müsste nun halt noch verstehen, dass sie nur zwischen dem 24.12. 14 Uhr und dem 27.12. 08 Uhr berechnen soll.

Code: Alles auswählen

=(MAX(;MIN(C2+(B2>C2);MAX(("14:00">"08:00");"08:00"))-MAX(B2;"14:00"))+MAX(;MIN(C2;MAX(("14:00">"08:00");"08:00"))-MAX(;"14:00"))*(B2>C2)+MAX(;MIN(C2+(B2>C2);MIN(("14:00">"08:00");"08:00"))-MAX(B2;))+MIN(C2;MIN(("14:00">"08:00");"08:00"))*(B2>C2))*24
mikeleb
*******
Beiträge: 1316
Registriert: Fr, 09.12.2011 16:50

Re: Probleme bei der Berechnung von Feiertagszuschlägen

Beitrag von mikeleb »

Hallo,
in meiner Formel steckte auch noch ein Fehler und sie kann noch etwas gekürzt werden. Hier die Korrektur:

Code: Alles auswählen

=WENN(UND(ZÄHLENWENN($G$2:$H$10;KÜRZEN(A2+B2+D2/24));ZÄHLENWENN($G$2:$H$10;A2));D2/24;WENN(ZÄHLENWENN($G$2:$H$10;KÜRZEN(A2+B2+D2/24));C2;WENN(ZÄHLENWENN($G$2:$H$10;A2);1-B2;0)))*24
Am besten ist, sie mal auseinander zu nehmen (auf das /24 und *24 gehe ich mal nicht ein, da es nur der Formatierung gilt):
Wenn
UND(ZÄHLENWENN($G$2:$H$10;KÜRZEN(A2+B2+D2/24));ZÄHLENWENN($G$2:$H$10;A2))
dann
D2
ansonsten wenn
ZÄHLENWENN($G$2:$H$10;KÜRZEN(A2+B2+D2/24))
dann
C2
ansonsten wenn
ZÄHLENWENN($G$2:$H$10;A2)
dann
1-B2
ansonsten
0
Was macht diese Wenn-Dann-Monster? Übersetzt heißt es für das Beispiel (Datum 30.04.14, Beginn 23:00, Ende 07:00, Stunden 8)
Wenn der Beginn- und der Ende-Tag Feiertag(e) sind, dann sind es die (Gesamt-) Stunden 8. Wenn (nur) der Endtag-Tag ein Feiertag ist, dann sind es die 7 Stunden, die der End-Zeit entsprechen. Wenn nur der Start-Tag ein Feiertag ist, dann sind es die Stunden bis Mitternacht (1-23:00). Ansonsten 0, da ja kein Feiertag dabei ist.
In dieses Teil möchtest du nun noch die Frage nach dem Sonntag integrieren. Also wenn (neben den obigen Bedingungen) noch Sonntag wäre, dann ...
Konkreter: wenn der betreffende Tag/die betreffenden Tage ein Feiertag oder ein Sonntag ist, dann ...
Damit wird die Formel zu:

Code: Alles auswählen

=WENN(UND(ODER(WOCHENTAG(KÜRZEN(A2+B2+D2/24);2)=7;ZÄHLENWENN($G$2:$H$10;KÜRZEN(A2+B2+D2/24)));ODER(WOCHENTAG(A2;2)=7;ZÄHLENWENN($G$2:$H$10;A2)));D2/24;WENN(ODER(WOCHENTAG(KÜRZEN(A2+B2+D2/24);2)=7;ZÄHLENWENN($G$2:$H$10;KÜRZEN(A2+B2+D2/24)));C2;WENN(ODER(WOCHENTAG(A2;2)=7;ZÄHLENWENN($G$2:$H$10;A2));1-B2;0)))*24
In dieses Monster möchtest du nun auch noch einbauen, dann an ganz bestimmten Tagen (24.12. und 27.12.) nur bestimmte Uhrzeiten als Feiertag zählen.
Ich würde die Berechnung gern so einfach wie nur möglich halten
Genau dafür sind Hilfszellen sinnvoll. Sie vereinfachen die Rechnungen (durch Zerlegen in einzelne Fälle). Diese Zellen können ausgeblendet werden und nur die finale Zelle mit dem Ergebnis bleibt sichtbar. Die Gesamtmonsterformel sieht sich keiner an, um sie nachzurechnen.
Gruß,
mikeleb
Harry666
Beiträge: 4
Registriert: Di, 07.01.2020 15:08

Re: Probleme bei der Berechnung von Feiertagszuschlägen

Beitrag von Harry666 »

Hallo mikeleb,

vielen Dank das du so viel Zeit da rein steckst.
Den kleinen Fehler, habe ich tatsächlich schon selber bemerkt und korrigiert.

Zum Sonntag hast du mich falsch verstanden. Die Sonntagsstunden sollen in einer separaten Zelle unabhängig von den Feiertagsstunden berechnet werden. Die Berechnung der Feiertagsstunden läuft ja bereits prima. Das eigentlich pikante dabei ist aber, dass wenn Sonn- und Feiertagsstunden zusammenfallen, nur die Feiertagsstunden berechnet werden sollen.
Nun könnte man der Sonntagsformel sicher recht einfach erklären "wenn Feiertagsstunden größer 0 dann sind Sonntagsstunden 0", nur wäre das nicht 100% zielführend, denn es gibt ja Situationen, wie das man aus einem Sonntag in einen Feiertag hinein arbeitet oder andersherum. In dem Fall muss ja tatsächlich beides berechnet werden. Die Priorität der Feiertagsstunden gibt es tatsächlich also nur, wenn der Sonntag ein Feiertag ist.

Das zweite Thema mit den zeitlich eingeschränkten Feiertagen stelle ich erst mal hinten an. Das können wir uns später auch noch anschauen - gern auch mit Hilfszellen. :)

Vielen Dank schon mal für deine Mühen!
Antworten