Формула Excel для автозаполнения даты
Я хотел бы, чтобы ячейки F4-F23 автоматически заполняли сегодняшнюю дату всякий раз, когда данные вводятся в ячейки E4-E23. Затем необходимо, чтобы ячейки I4-I23 автоматически заполнялись сегодняшней датой при вводе данных в ячейки H4-H23. Данные, введенные в ячейки H4-H23, будут вводиться в разные дни, после чего данные вводятся в ячейки E4-E23. Я нашел этот код, который работает для первой части моего вопроса, мне нужно знать, как изменить его для работы с ячейками H и I.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim E As Range, F As Range, Inte As Range, r As Range
Set E = Range("E:E")
Set Inte = Intersect(E, Target)
If Inte Is Nothing Then Exit Sub
Application.EnableEvents = False
For Each r In Inte
r.Offset(0, 1).Value = Date
Next r
Application.EnableEvents = True
End Sub
1 ответ
Попробуй это:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim E As Range, H As Range, Inte As Range, r As Range
Set E = Range("E:E")
Set H = Range("H:H")
Set Inte = Intersect(E, Target)
If Not Inte Is Nothing Then
Application.EnableEvents = False
For Each r In Inte
r.Offset(0, 1).Value = Date
Next r
Application.EnableEvents = True
End If
Set Inte = Intersect(H, Target)
If Not Inte Is Nothing Then
Application.EnableEvents = False
For Each r In Inte
r.Offset(0, 1).Value = Date
Next r
Application.EnableEvents = True
End If
End Sub
Вместо выхода из подпрограммы, когда пересечение - ничто, проверьте на противоположность ничему и запустите код на каждом пересечении отдельно.
Обратите внимание, я объявил H как диапазон и удалил неиспользованное объявление F как диапазон.