VBA 代码帮助更新每个单元格更改的日期单元格

VBA 代码帮助更新每个单元格更改的日期单元格

我正在尝试自动生成 Excel 中来自不同用户的响应日期列。我已根据来自不同博客的一些研发更新了代码,但卡在一个地方。我的代码如下。同样能够在下一个单元格中记录单元格更改的日期。而且由于我只想要第一次更新的日期,所以它运行良好。但是,如果用户删除响应,日期仍然存在,因此“目标.偏移(0,1)。ClearContents”不起作用。请帮助更新代码。我对代码的要求总结如下:

  1. 它应该更新下一个单元格中单元格变化的日期(偏移量(0,1))
  2. 如果某个单元格发生多次更改,则仅记录第一次响应日期,并且不会覆盖之前的日期。
  3. 当用户删除回复时,日期也应被删除。

(代码将在约 2000 行的 Excel 中运行,并且约 10-20 个用户将访问该工作表。)

Dim xRg As Range, xCell As Range
On Error Resume Next
If (Target.Count = 1) Then
If Not Intersect(Target, Application.ActiveSheet.Range("U:U,W:W,Y:Y,AA:AA,AC:AC,AE:AE,AG:AG,AI:AI")) Is Nothing Then
Application.EnableEvents = False
For Each xCell In xRg
        If VBA.IsEmpty(xCell.Value) Then
            If Target.Offset(0, 1) = "" Then
            Target.Offset(0, 1) = Now
            End If
            Else
            Target.Offset(0, 1).ClearContents
        End If
    Next
    Application.EnableEvents = True
End If
End If
End Sub

相关内容