Excel中的时间戳基于两列中的先前单元格输入

时间:2019-04-22 21:05:37

标签: excel vba

我需要此代码对第3列做同样的事情。当在前一个单元格中有一个条目时,该代码会将时间戳记粘贴到一个单元格中。我需要在第3列和第5列中执行此操作的代码。我尝试进行此操作,但我不断遇到错误,这些错误只允许我执行其中一项。

Private Sub Worksheet_Change(ByVal Target As Range) 
    On Error GoTo Handler 
    If Target.Column = 5 And Target.Value <> "" Then 
        Application.EnableEvents = False 
        Target.Offset(0, 1) = Format(Now(), "dd-mm-yyyy hh:mm:ss") 
        Application.EnableEvents = True 
    End If 
Handler: 
End Sub

1 个答案:

答案 0 :(得分:0)

上周我才刚刚开始学习VBA,所以我敢肯定有人会来并发布一种更有效的方法,但这似乎行得通...

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Handler
If Target.Column = 3 And Target.Value <> "" Then
    Application.EnableEvents = False
    Target.Offset(0, 1) = Format(Now(), "dd-mm-yyyy hh:mm:ss")
    Application.EnableEvents = True
End If

If Target.Column = 5 And Target.Value <> "" Then
    Application.EnableEvents = False
    Target.Offset(0, 1) = Format(Now(), "dd-mm-yyyy hh:mm:ss")
    Application.EnableEvents = True
End If

Handler:
End Sub

我也刚遇到过Create an automatic date stamp in excel from an entry