VBA - 在单元格中输入数据时自动填充日期

VBA - 在单元格中输入数据时自动填充日期

我有一个跟踪电子表格,我希望单元格完成的日期自动填充到下一列中。我发现以下代码适用于第一列 (I:I),但我想将相同的代码添加到其他 5 列(即,当在 K1 中输入数据时,日期填充到 L1 中,当在 P1 中输入数据时,日期填充到 Q1 中)。

我以前从未使用过 VBA。我尝试过复制/粘贴代码并更改范围,但出现了模糊名称错误。我该如何更改名称以便可以重复使用代码?

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim A As Range, B As Range, Inte As Range, r As Range
    Set A = Range("I:I")
    Set Inte = Intersect(A, 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 A As Range, B As Range, Inte As Range, r As Range
Set A = Range("I:I,K:K,P:P")
Set Inte = Intersect(A, 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

这将监视列, 和

相关内容