Liebe Leute!
Problem: Ich möchte immer auf die nächste ganze Stunde runden, auch, Beispiel: wenn 5:05, dann 6:00.
Mit der „normalen“ Rundung bringe ich es zusammen, leider rundet es aber bis zu unter 30 Minuten immer ab, zu obigem Beispiel also 5 Stunden.
Vorab schon Danke für die Hilfe,
Gauki
Hi,
das ist abhängig vom Datenformat, in dem das steht. Ich habe eben probiert, Felder mit dem Format „Uhrzeit“ zu runden, ist mir nicht gelungen. (Das liegt m.E. daran, dass er „intern“ anders rechnet)
Da Du aber schon gerundet hast, nehme ich mal an, es liegt ein Standardformat vor. Jetzt ist es am einfachsten, wenn die Werte dezimal vorliegen (also z.B. 5.30 Uhr ist 5,5 / 5.45 Uhr ist 5,75.
Um das aufzurunden, musst Du einfach vor dem Runden 0,5 dazuaddieren (alter Programmierertrick).
Beispiel 1 : 5,1 Uhr (5h6m) wird zu 5,6 und korrekterweise zu 6 aufgerundet.
Beispiel 2 : 5,9 Uhr (5h54min) wird zu 6,4 und zu 6 abgerundet.
Gruss Hans-Jürgen
***
Hallo Gauki,
Problem: Ich möchte immer auf die nächste ganze Stunde runden,
auch, Beispiel: wenn 5:05, dann 6:00.
Dann nutze doch die Funktion „AUFRUNDEN“!
Gruß Kubi
kein Problem:
=WENN(MINUTE(A1)>0;STUNDE(A1)+1;STUNDE(A1))
und die Zelle benutzerdefiniert formatieren: 0":00"
Vielen Dank, Klexy, das war es.
Auch den anderen eine Dankeschön für ihre Hilfe.
G.
Versuchs doch mal mit dieser Function:
VB-Editor öffnen, und in „DieseArbeitsmppe / ThisWorkbook“ kopieren.
****************************
Beginn Code
****************************
Function rund_auf() 'Ermittelt die Aktuelle Uhrzeit.
Dim rund
rund = Minute(Now())
Dim zeit
Select Case (rund) 'Rundet die Zeit auf
Case 1 To 59
rund = 0
zeit = Hour(Now()) + 1 & „:00“
End Select
rund_auf = zeit
End Function
***********************
Ende Code
Grüße, ich
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]