Excel 当单元格刚刚单击但未编辑时,如何禁用通过宏添加时间戳?

Excel 当单元格刚刚单击但未编辑时,如何禁用通过宏添加时间戳?,excel,vba,Excel,Vba,我已经为任务跟踪文件中的时间戳和用户名添加了一些VBA代码。虽然我找到的代码可以工作并在需要时添加信息,但宏会对单击作出反应,并输入单击时间,而不是值更改时间 我尝试了各种代码,这就是我最终得到的代码。任务状态在列“I”中,我希望时间戳出现在列“K”中,用户名出现在列“L”中。代码放置在图纸中 Public Function UserName() UserName = Environ$("UserName") End Function Private Sub Worksheet_Sel

我已经为任务跟踪文件中的时间戳和用户名添加了一些VBA代码。虽然我找到的代码可以工作并在需要时添加信息,但宏会对单击作出反应,并输入单击时间,而不是值更改时间

我尝试了各种代码,这就是我最终得到的代码。任务状态在列“I”中,我希望时间戳出现在列“K”中,用户名出现在列“L”中。代码放置在图纸中

Public Function UserName()
    UserName = Environ$("UserName")
End Function

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 9 Then
Application.EnableEvents = False
Cells(Target.Row, 11).Value = Date + Time
Cells(Target.Row, 12).Value = UserName
Application.EnableEvents = True
End If

End Sub

我只想在单元格值更改时添加时间戳和用户名,例如从“打开”更改为“完成”。我非常感谢您的帮助:)

请结束这个问题:您想要的是活动,而不是


要解决此问题,只需删除
工作表中的
选择
\u SelectionChange

中的
选项,即可结束此问题:您想要的是事件而不是事件


要修复此问题,只需删除
工作表\u Selection Change
中的
选择

使用
工作表\u Change
事件,而不是
工作表\u Selection Change
^应该是一个简单的更改(非常可怕的双关语):在
工作表\u-SelectionChange
中去掉
选择
。使用
工作表\u-Change
事件而不是
工作表\u-SelectionChange
^应该是一个简单的更改(非常可怕的双关语):在
工作表\u-SelectionChange
中去掉
选择
。非常感谢!这比看起来要容易。。。如果可以的话,你能告诉我这两件事的一些情况吗?说到VBA,我是“复制/粘贴”类型,但我也想学习。这是我第一次使用这种类型的事件。我用文档的链接编辑了这个问题,但简单地说,选择更改事件发生在工作表上的选择更改时,因此任何时候都可以选择新单元格。当用户或外部链接更改单元格时,会发生更改事件。单元格值从“打开”变为“完成”是后一种情况。非常感谢!这比看起来要容易。。。如果可以的话,你能告诉我这两件事的一些情况吗?说到VBA,我是“复制/粘贴”类型,但我也想学习。这是我第一次使用这种类型的事件。我用文档的链接编辑了这个问题,但简单地说,选择更改事件发生在工作表上的选择更改时,因此任何时候都可以选择新单元格。当用户或外部链接更改单元格时,会发生更改事件。单元格值从“打开”更改为“完成”是后一种情况。