Seite 1 von 1

Uhrzeit in Dezimalzahl umwandeln

Verfasst: Mo 17. Sep 2018, 16:17
von MoonKid
Ich möchte eine Uhrzeit "07:30" in eine Dezmalzahl umwandeln "7,5" (7 Stunden und eine halbe).

Wie das geht steht hier: https://stackoverflow.com/q/45197672/4865723
Einfach mal 24 nehmen.

Aber warum das funktioniert habe ich nicht verstanden. ;)
Kann das jemand erklären?

Re: Uhrzeit in Dezimalzahl umwandeln

Verfasst: Mo 17. Sep 2018, 16:21
von miesepeter
http://www.ooowiki.de/CalcFunktionenDatum(2f)RechnenMitDatumUndZeit.html hat geschrieben:Zeitwerte rechnen (wie Datumswerte) in ganzen Tagen. Das wird offensichtlich, wenn man einen Zeitwert durch 1 dividiert (A1 sei 12:00 und B2=A1/1, das Resultat ist 0,5)
Weitere Info im o.a. Link. - Ciao

Re: Uhrzeit in Dezimalzahl umwandeln

Verfasst: So 23. Sep 2018, 21:12
von Wanderer
Hallo,
MoonKid hat geschrieben:
Mo 17. Sep 2018, 16:17
Aber warum das funktioniert habe ich nicht verstanden. ;)
Kann das jemand erklären?
Es funktioniert, weil man das so eingerichtet hat, daß man mit Datum und Zeiten relativ nahtlos rechnen kann.
Zum Rechnen mit Datums-Werten werden intern Tageszahlen verwendet,
so daß "20.9.2018" + 1 die interne Zahl des "21.9.2018" ergibt.
Ein Tag entspricht 24 Stunden, also sollten 24 Stunden ebenfalls als 1 dargestellt werden.
Damit kommt man dann auf "Tageszahl" + 0,5 => 12 Uhr Mittags am jeweiligen Tag, "Tageszahl" + 0,25 => 6 Uhr früh am jeweiligen Tag.

Umrechnungsfaktor sind also 24 Stunden/Tag
Wenn man dann reine Stunden/Minutenwerte hat muß man als mit 24 Multiplizieren um
aus 1/24 vom Tag wieder eine 1 für die Darstellung zu errechnen.
( Die Formatcodes erledigen diese Umrechnung für die Darstellung ohne den Wert der Zelle zu ändern.
Man sollte sich allso immer daran erinnern, daß ein Unterschied zwischen Anzeige und internem Wert bestehen kann. )

MfG, Jörn

Re: Uhrzeit in Dezimalzahl umwandeln

Verfasst: So 30. Sep 2018, 02:24
von LORI
mach mal folgende Experimente:

Schreibe in eine (genügend breite) Zelle einfach 15:14 rein: es erscheint 15:14:00, zeitformatierte Zelle.
Schreib drunter ="11:24"*1 , das Ergebnis ist 0,4729..., der dezimale Tagesanteil dieser Zeit. Übertrage das Format von der Zeitformatierten Zelle dahin, es erscheint 11:24:00 (LO erkennt den Zeit-String nach einer mathematischen Operation auch als Zeit, wie auch xl u.a.).

Bilde jetzt die =Summe(ersteZeit;zweiteZeit) : Ergebnis: 2:35:00 Der Tag wird also weg"radiert", Du siehst nur den überständigen Rest.
Nun gehst Du ins Menü Format>Zellen>Zahlen und schreibst als Format-Code [h]:mm rein, und jetzt siehst Du wieder alle Stunden: 26:35
Schreib drunter =OrtvorigeZelle, also meinetwegen =A10 und übertrage das Format einer "jungfräulichen" Zelle auf A11: es kommt die Dezimalzahl
1,1076..., nämlich 1 ganzer Tag und 0,1076... Tage in Stunden, aber eben dezimal. Entspricht den Formeln GANZZAHL(A10) und Rest(A10;1)

Nun willst Du aber nicht in Tagen rechnen, sondern in "Industrie"-Stunden. Da macht Runden etwas Probleme, weil 1/24 Tag eine ganz krumme Zahl ist.
Es hilft aber, erst *24 zu nehmen, und dann in Ganzzahl und Rest zu teilen

=Ganzzahl(A10*24) und =Rest(A10*24;1)
Da ergibt Rest zwar auch krumme Zahlen, aber wenn Du jetzt beide Ergebnisse addierst, hast Du wieder eine Gesamtzahl,
als Dezimalstunden: 26 Std + 0,5833 Std(das sind die 35 min), summa summarum also 26,5833 h

Vllt etwas umständlich erklärt, aber wenn Du es nachvollziehst, hast Du es ein für allemal intus!

Die Zeitumrechnungs-Komplikationen liegen daran,
dass wir den Tag in 24 Std eingeteilt haben und nicht in 10 und die Stunde in 60 Min und nicht in 100. Inkompatibilität zwischen Dezimal und Zeitsystem. (gleiches ja beim Kreisgrad, das Neugrad als 1/400 Kreis konnte sich nie durchsetzen und wer weiß, wo es dann wieder gehakt hätte...

Noch eine Formel, die nützlich sein könnte: =TEXT("15:14"+"11:21";"[h]:mm") erlaubt
alle Formatvariationen, zB =TEXT(("15:14"+"11:21")*24;"0,0000") =>26,5833, das obige Ergebnis.
Und da LO bei Math-Operationen solche Texte als Zahl interpretiert, mag das sogar einfacher sein als Obiges!

Re: Uhrzeit in Dezimalzahl umwandeln

Verfasst: So 30. Sep 2018, 08:32
von miesepeter
@Wanderer, @LORI
Prima Erklärungen, danke dafür.