Я импортирую данные из текстового файла и использую макрос для форматирования в Excel. Он распознает и форматирует время (чч:мм:сс) - за исключением случаев, когда это, например, 00:15:27 - данные полностью отбрасывают нули для чч, а затем мой макрос распознает мм:сс как чч:мм. Я отслеживаю данные за 24 часа - поэтому, когда наступает полночь, я теряю час в данных и могу получить странный час 53:02:00, например, или я могу получить 10:43:00 - думая, что сейчас 10 часов, а не 00:10:43.
Есть ли способ заставить макрос распознать, что там что-то должно быть, и изменить его на OO?
Спасибо.
решение1
Скажем, у нас естьтекстценности вА1черезА10нравиться:
и мы хотим, чтобы все 5-символьные данные обрабатывались так, как будто они есть00:перед ними. Мы можем проверить длину:
Sub MakeTime()
Dim r As Range, v As String
For Each r In Range("A1:A10")
v = r.Text
If Len(v) = 5 Then v = "00:" & v
r.Value = TimeValue(v)
Next r
End Sub
Результат: