Ich versuche, Millisekunden in einem Excel-Makro anzuzeigen. Ich habe eine Spalte mit ganzen Zahlen, die Zeitstempel in Millisekunden sind (z. B. 28095200 ist 7: 48: 15.200 Uhr), und ich möchte daneben eine neue Spalte erstellen, die einen laufenden Durchschnitt beibehält und die Zeit in einem hh:mm:ss.000
Format.
Dim Cel As Range
Set Cel = Range("B1")
temp = Application.Average(Range("A1:A2")) / 1000
ms = Round(temp - Int(temp), 2) * 1000
Cel.Value = Strings.Format((temp / 60 / 60 / 24), "hh:mm:ss") _
& "." & Strings.Format(ms, "#000")
Dies zeigt nur "mm: ss.0" in der Zelle. Wenn ich jedoch auf die Zelle klicke, wird in der Bearbeitungsleiste "hh: mm: ss" angezeigt. Warum fehlen die Stunden? Wie kann ich die Stunden, Minuten, Sekunden und Millisekunden anzeigen?
Klicken Sie mit der rechten Maustaste auf Zelle B1
Und wählen Sie Zellen formatieren. Geben Sie in Benutzerdefiniert Folgendes in das Textfeld mit der Bezeichnung Typ ein:
[h]:mm:ss.000
Um dies im Code festzulegen, können Sie Folgendes tun:
Range("A1").NumberFormat = "[h]:mm:ss.000"
Das sollte dir geben, wonach du suchst.
HINWEIS: Bei speziell formatierten Feldern muss die Spaltenbreite häufig breit genug sein, damit der gesamte Inhalt des formatierten Texts angezeigt werden kann. Andernfalls wird der Text als ######
Angezeigt.
Ich habe in Excel 2007 festgestellt, dass ss.000 nicht funktioniert, wenn die Ergebnisse eine Tabelle aus einer eingebetteten Abfrage sind. Ich kann die Abfrageergebnisse (aus SQL Server Management Studio) einfügen und die Uhrzeit gut formatieren. Wenn ich die Abfrage jedoch als Datenverbindung in Excel einbette, gibt das Format immer .000 als Millisekunden an.
Ich habe das in Excel 2000 gemacht.
Diese Anweisung sollte sein: ms = Round(temp - Int(temp), 3) * 1000
Sie müssen ein benutzerdefiniertes Format für die Ergebniszelle von [h]:mm:ss.000
Erstellen.