Как я могу заменить часть метки времени - PullRequest
0 голосов
/ 03 февраля 2020

В VBA Excel я хотел бы заменить временные метки, содержащие 00:00:00 в части H: m: s, на значение 00:00:01. Полный формат используемой метки времени: гггг-мм-дд чч: мм: сс.

Когда я пытаюсь использовать простой поиск и замену, он не работает. Я думаю, потому что формат является меткой времени и как таковой он не распознает это как строку.

Ответы [ 2 ]

0 голосов
/ 03 февраля 2020

Если это не String тип данных, а фактические числа c значения, отформатированные как вы описываете, вы можете проверить:

По формуле:

IF(HOUR(A1)+MINUTE(A1)+SECOND(A1)=0,A1+1/86400,A1)

Или:

IF(INT(A1)=A1,A1+1/86400,A1)

По коду:

If Hour([A1]) + Minute([A1]) + Second([A1]) = 0 Then Range("A1").Value = [A1+1/86400]

Или:

If Int([A1]) = [A1] Then Range("A1").Value = [A1+1/86400]

Выше измените [A1] для своей переменной, содержащей значение даты и времени, и создайте явную ссылку Range.

0 голосов
/ 03 февраля 2020

Вы должны изменить форматирование ячейки, value в Excel - то же самое.

Выберите ячейки, которые вы хотите отобразить определенным образом, go для форматирования -> Пользовательский - >

Тип:

чч: мм: сс

...