(Un-)Genauigkeiten beim Rechnen mit Zeiten

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

Schiri1
*
Beiträge: 14
Registriert: Di, 25.01.2005 14:43
Wohnort: Nürnberg, eigendlich aber Löbau(Sa.)

(Un-)Genauigkeiten beim Rechnen mit Zeiten

Beitrag von Schiri1 »

Ich möchten in einer Tabelle (Dienstplan) die geleistete Arbeitszeit im Monat berechnen.
Dabei stehen Beginn und Ende jeweils Format [hh]:mm in der Tabelle1.
In Tabelle2 wird im ersten Teil der für den jeweiligen Tag die Arbeitsstunden (als Bruchteil eines Tages) berechnet und ebenfalls im Format [hh]:mm dargestellt.
Im Zweiten Teil erfolgt nun Berechnung für den Monat. Alle Tage werden zusammengezählt und die Summe mit 24 multipliziert und als Zahl mit zwei Dezimalstellen dargestellt.
:?:
Nun das Problem:
Die Zahlen für den Bruchteil eines Tages haben "unendliche" Dezimalstellen, und bei Berechnung kommen "seltsame" Dezimalzahlen heraus.
So werden aus 4 Stunden eben 4,02 Stunden; und der Fehler summiert sich übers Jahr.
Wie kann ich diese (Un-)Genauigkeiten bei der Berechnung (nicht nur optisch)ausschalten.
Toxitom
********
Beiträge: 3768
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Schiri1,
Wie kann ich diese (Un-)Genauigkeiten bei der Berechnung (nicht nur optisch)ausschalten.
Leider gar nicht. Zeitangaben werden intern als Double-Variable gespeichert und weiterverarbeitet (Länge 8 Byte). Insofern ist die Dezimalzahl nicht "unendlich", und es tritt immer ein Fehler auf. Dass der aber bereits so massiv durchschlägt??? na ja, du wirst es probiert haben.
Tia, viel Möglichkeiten bleiben dir da nicht. Um Fehler zu vermeiden, müsstest du mit ganzen Zahlen rechnen - also die Stunden erst in ganze Zahlen umwandeln (mit gewünschter Genauigkeit - also z.B. mit zwei Stellen * 100, Kommareste abschneiden) dann deine Additionen durchführen, und schliesslich wieder rückwandeln. Das ist mit Formeln alles lösbar, aber möglicherweise macht es dann schon mehr Sinn, gleich eine entsprechende Basic-Anwendung zu schreiben.

Viele Grüße
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Hubi
**
Beiträge: 32
Registriert: Di, 25.01.2005 12:06
Wohnort: 21423 Winsen
Kontaktdaten:

Beitrag von Hubi »

Ich verstehe dein Zeitmodell nicht, ich denke da liegt der Fehler im Ansatz der Berechnung. Entweder du hast eine Jahresarbeitszeit, eine Monatsarbeitszeit, eine Wochenarbeitszeit oder eine Tagesarbeitszeit. Die Berechnung der Tagesarbeitszeit aus der Jahresarbeitszeit heraus in Bruchteilen Jahresarbeitsstunden pro Tag wird nicht klappen, da solltets du deinen Ansatz ändern und vielleicht das entsprechende Zeitmodel hier reinstellen , dann kann man auch einen Lösungsansatz finden

Hubi
Antworten