Добрый день всем.
Необходим подсчет времени (часы и минуты) в интервале между разными датами.
Есть макрос для "быстрого" (без доп знаков) ввода даты и времени в одну ячейку:
Код |
---|
Private Sub Worksheet_Change(ByVal Target As Range)
Dim k As String, sD As String
If Target.Cells.Count > 1 Then Exit Sub
With Target
k = .Text
If Not k Like "##########" Then Exit Sub
Application.EnableEvents = False
sD = Left(k, 2) & "/" & Mid(k, 3, 2) & "/" & Mid(k, 5, 2) & " " & Mid(k, 7, 2) & ":" & Right(k, 2)
If IsDate(sD) Then .Value = CDate(sD)
Application.EnableEvents = True
End With
End Sub |
Все работает (обрабатывается) как надо, пока в дате день записывается двумя значащими цифрами, напр.: 1210211500 = 12.10.2021 15:00.
Но при вводе даты с ведущим нулем в днях, макрос "не работает" (остается строка цифр, но без ведущего "0"): 0110211500 = 110111500.
Подскажите, что, как и где нужно изменить (макрос или формат ячеек, или что?), чтоб это исправить?
Эксель = 2013, формат ячеек перед вводом значений = общий.