Миллисекунды дисплея в Excel

Я пытаюсь отобразить миллисекунды в макросе Excel. У меня есть столбец целых чисел, которые являются метками времени в миллисекундах (например, 28095200 7:48:15.200), и я хочу сделать новый столбец рядом с ним, который сохраняет рабочее среднее число и отображает время в a hh:mm:ss.000 формат.

 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")

Это только отображает "mm:ss.0" в ячейке. Все же, когда я нажимаю на ячейку, она показывает "hh:mm:ss" в панели формул. Почему часы отсутствуют? Как я могу показать часы, минуты, секунды и миллисекунды?

115
задан PGSystemTester 8 July 2019 в 19:39
поделиться

2 ответа

Щелкните правой кнопкой мыши ячейку B1 и выберите Форматировать ячейки . В Custom введите следующее в текстовое поле с надписью Type :

[h]:mm:ss.000 

Чтобы установить это в коде, вы можете сделать что-то вроде:

Range("A1").NumberFormat = "[h]:mm:ss.000"

Это должно дать вам то, что вы ' повторно ищем.

ПРИМЕЧАНИЕ. Для специально отформатированных полей часто требуется, чтобы ширина столбца была достаточно широкой для всего содержимого форматированного текста. В противном случае текст будет отображаться как ###### .

212
ответ дан 24 November 2019 в 02:25
поделиться

Я сделал это в Excel 2000.

Этот оператор должен быть: мс = Round (temp - Int (temp), 3) * 1000

Вам необходимо создать пользовательский формат для ячейки результата [h]: mm: ss.000

4
ответ дан 24 November 2019 в 02:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: