Я пытаюсь создать документ Excel, который будет автоматически заполнять дату в столбце A всякий раз, когда что-то вводится в соседнюю строку.Я нашел аналогичный ответ онлайн:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'Updated by Extendoffice 2017/10/12
Dim xRg As Range, xCell As Range
On Error Resume Next
If (Target.Count = 1) Then
If (Not Application.Intersect(Target, Me.Range("B:B")) Is Nothing) Then _
Target.Offset(0, -1) = Date
Application.EnableEvents = False
Set xRg = Application.Intersect(Target.Dependents, Me.Range("B:B"))
If (Not xRg Is Nothing) Then
For Each xCell In xRg
xCell.Offset(0, -1) = Date
Next
End If
Application.EnableEvents = True
End If
End Sub
Это делает соседний столбец автозаполнением даты.Другой ответ был дан в разделе комментариев, и это именно та функция, которую я ищу.Dut из-за форматирования раздела комментария, его отступы отсутствуют:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'Updated by Extendoffice 20190924
Dim xRg As Range, xCell As Range
Dim xInt As Integer
On Error Resume Next
If (Target.Count = 1) Then
If (Not Application.Intersect(Target, Me.Range("B:N")) Is Nothing) Then
Application.EnableEvents = False
xInt = Target.Row
Me.Range("A" & xInt).Value = Date
Application.EnableEvents = True
End If
End If
End Sub
Как это должно быть написано правильно?