Sekunden in Tage Stunden Minuten Sekunde

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

MaxAMD400
Beiträge: 2
Registriert: Fr, 06.10.2017 11:21

Sekunden in Tage Stunden Minuten Sekunde

Beitrag von MaxAMD400 »

Hallo,

ich bau nun seit Stunden an der Formatierung rum und bekomme es nicht hin.
Ich möchte gern, das mir Sekunden in Tage Stunden Minuten Sekunden angezeigt wird

z.B.
A1= 86400 A2= 01 00:00:00

A1 kann auch größer sein als 86400
z.B.
A1= 94.069 dann ist A2 = 01 07:07:49

versucht habe ich schon TT HH:MM:SS
oder muss man das Trennen ? A2= Tage A3= HH:MM:SS

aber wie ist da die Formel ?

MFG
Max
Toxitom
********
Beiträge: 3768
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Re: Sekunden in Tage Stunden Minuten Sekunde

Beitrag von Toxitom »

Hey Max,

hmm, das ist ein bischen komplizierter. Entweder Du berechnest die Ausgabeformel "händisch" - was dann zumindest mathematisch korrekt wäre,

oder du verwendest die von Dir angesprochenen Formatierung, dann musst Du aber ein wenig "umbauen" und die Daten sind sicher nur bedingt korrekt (also, in max. 31 Tagen;)

Intern wird das Datumsformat ja als Zahl abgespeichert - 1 Tag = 1, die Dezimalstellen ergeben die Zeit. Startpunkt ist das Datum 30.12.1899.

Der Wert "1" entspricht also dem Tag "31" (.12.1899). Da Du das als "1" dargestellt haben möchtest, musstr Du einen Korrekturfktor von "1" hinzufügen - dann würde die Formatierung stimmen:

A1 = 86400 -> A2: = (A1/(60*60*24)) + 1 -> Formatiert als TT HH:MM:SS würde jetzt 01 00:00:00 ergeben und so weiter.

Aber: eben nur 31 Tage lang - danach "springt" der Tag-Wert ja wieder auf "1".

Korrekt berechnet:

(Dein Wert steht in A1):

Tage: =GANZZAHL(A1/(60*60*24))
Stunden: =GANZZAHL(REST(A1;86400) /(60*60))
Minuten: =GANZZAHL(REST(REST(A1;86400) ;(60*60))/60)
Sekunden: =REST(REST(REST(A1;86400) ;(60*60));60)

ok, die 86400 kannste auch ersetzen durch (60*60*24) ;)

Das ganze dann als String zusammengebaut: = Verketten(Text(GANZZAHL(A1/(60*60*24)); "00"); " "; Text(GANZZAHL(REST(A1;86400) /(60*60));"00");":";Text(GANZZAHL(REST(REST(A1;86400) ;(60*60))/60);"00");":";Text(REST(REST(REST(A1;86400) ;(60*60));60);"00"))

und schon haste Dein Ergebnis:)

VG Tom
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
MaxAMD400
Beiträge: 2
Registriert: Fr, 06.10.2017 11:21

Re: Sekunden in Tage Stunden Minuten Sekunde

Beitrag von MaxAMD400 »

Hi Tom,

Danke für die fixe profihafte Antwort.
Ich hab jetzt mal mit =(A2/(60*60*24)) + 1 probiert und das funktioniert wunderbar.

Mit besten Grüßen
Max
Antworten