У меня есть таблица в Excel, которая связана с другим источником данных, и она автоматически обновляется. Я ищу код для захвата старых значений (только из измененных ячеек) из столбца C и размещения их в столбце D.
Я пробовал этот код, но, очевидно, он захватывает только одно значение за раз, и он не захватывает автоматически обновляемые значения.
Dim oval
Worksheet_SelectionChange
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
oval = Target.Value
End Sub
Worksheet_Change
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo SkipError
Application.EnableEvents = False
If Not Intersect(Target, Me.ListObjects("Table1").ListColumns(3).DataBodyRange) Is Nothing Then
If Target.Value <> oval Then
Cells(Target.Row, "D").Value = oval
End If
End If
SkipError:
Application.EnableEvents = True
End Sub
Я ожидаю, что столбец D будет иметь старые значения столбца C, когда он будет обновляться.