Excel = TIME () mit Werten über 24 Stunden wird falsch angezeigt

546
Rodin10

Ich versuche, die Uhrzeit in Excel mehr =TIME()als 24 Stunden anzuzeigen, aber wenn die Werte 24 Stunden überschreiten, werden sie falsch angezeigt. Zum Beispiel habe ich =TIME(27;42,81;49)welche 24:59 anzeigen soll. Stattdessen wird 03:42 angezeigt. Ich habe das Format bereits in [hh: mm] geändert. Dies funktioniert gut, wenn Sie =SUM()für die 3 separaten Werte einen Wert eingeben.

0

3 Antworten auf die Frage

3
Seth

Der offizielle Artikel über TIME () legt nahe, dass er nur 24 Stunden anzeigen soll. Als solches wäre die Anzeige von 03:42korrekt. Wenn Sie mit einer beliebigen Anzahl von Stunden, Minuten und Sekunden arbeiten möchten, können Sie diese Funktion wahrscheinlich nicht verwenden, sondern beispielsweise das Zellenformat.

Ah, ich verstehe, danke. Was schlagen Sie vor? Rodin10 vor 5 Jahren 0
Wie gesagt, nur das Zellenformat, da es auch größere Zahlen unterstützt. Es ist unklar, warum Sie `TIME () 'überhaupt verwenden. Ihr Beispiel enthält alle Basisinformationen, die Sie benötigen, um einfach' 24: 59: 00 'in eine Zelle zu schreiben. Seth vor 5 Jahren 0
Nun, es kommt von einem Stück Code, der Sekunden in Stunden, Minuten und Sekunden umwandelt. Durch das Tippen auf das, was ich getan habe, habe ich gedacht, dass es einfacher wäre, die Werte direkt zu drucken, ohne Excel-Formeln zu verwenden. Danke für die Hilfe. Rodin10 vor 5 Jahren 0
2
AFH

Die TIME()Funktion arbeitet wie angegeben. Aus dem Online-Handbuch wird der erste Parameter definiert: -

Stunde erforderlich Eine Zahl zwischen 0 (Null) und 32767, die die Stunde darstellt. Jeder Wert größer als 23 wird durch 24 geteilt und der Rest wird als Stundenwert behandelt. Zum Beispiel ist TIME (27,0,0) = TIME (3,0,0) = 0,125 oder 3:00 Uhr.

Wenn Sie über 23 zeigen Stunden wollen, müssen Sie bauen und formatieren Sie Ihre eigenen Werte, zB wenn die Stunden, Minuten und Sekunden in sind A1:C1, setzen Sie D1auf:

=A1/24+B1/1440+C1/86400 

Sie formatieren die Zelle jetzt einfach [hh]:mm:sswie in der Antwort von Aganju vorgeschlagen.


[Ich lasse meinen vorherigen Vorschlag für die Ausgabeformatierung unter, da die verwendeten Techniken in Fällen hilfreich sein können, die nicht im Aganju-Format behandelt werden.]

Alternativ können Sie eine Zelle generieren, die nach Ihren Wünschen formatiert ist:

=TEXT(ROUNDDOWN(D1*24),"##")&":"&TEXT(ROUNDDOWN(MOD(D1*1440,60)),"##")&":"&TEXT(ROUNDDOWN(MOD(D1*86400,60)),"##") 

Streng genommen sollte das Sekundenfeld =ROUND()anstelle von verwendet werden =ROUNDDOWN(), was jedoch Probleme mit Sekundenwerten von 59,5 und darüber verursacht.

Wenn die nächste Rundung wichtig ist, D1muss zuerst auf die nächste Sekunde (1/86400) gerundet werden, z. B. durch Setzen E1auf:

=ROUND(D1*86400)/86400 

Die formatierte Zelle lautet dann:

=TEXT(ROUNDDOWN(E1*24),"##")&":"&TEXT(ROUNDDOWN(MOD(E1*1440,60)),"00")&":"&TEXT(ROUNDDOWN(MOD(E1*86400,60)),"00") 

In beiden Fällen können diese Formeln kombiniert werden, um die Arbeitszellen zu eliminieren, die resultierenden Ausdrücke sind jedoch sehr komplex und schwer zu verstehen und zu unterstützen.

Ich habe gerade Aganjus Antwort gesehen und die Verwendung von [hh]: mm: ss "als Zellenformat ist eine viel klügere Lösung als das manuelle Erstellen des Ausgabe-Strings. AFH vor 5 Jahren 0
0
Aganju

Normale Tage haben nur 24 Stunden. Excel beginnt also wieder mit 0 - wie bei einer Uhr. Dies ist der Formatcode "hh: mm", der Standardwert für Time

Wenn Sie möchten, dass sich Stunden über 24 ansammeln, müssen Sie den entsprechenden Formatcode verwenden: "[hh]:mm"- Die [und ]um die Stunden herum machen sie unbegrenzt.

Beachten Sie, dass dies auch für Minuten funktioniert - Sie könnten "[mm]:ss"einen Formatcode verwenden, der Minuten für immer zählt.

Ich bin dem noch nicht begegnet: sehr wissenswert und eine viel einfachere Antwort als meine auf die Formatierungsseite der Frage. Vielen Dank. Ich würde gerne abstimmen, aber Sie haben die Eingabeseite nicht berücksichtigt, daher ist Ihre Antwort nur unvollständig. AFH vor 5 Jahren 0