it-swarm.com.de

Anzeigen von Millisekunden in Excel

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?

115
Evelyn

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.

211
Ben McCormack

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.

6
Eric

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.

4