Excel 如何防止在添加或删除行时运行工作表更改事件?
说到编程,我完全是个新手。我正在制作一个电子表格来获取培训信息。下面列出的代码输入用户名(来自将用户名定义为窗口用户名的模块)、日期和时间。我的问题是,当添加或删除行时,会导致sub运行。我能做些什么来防止这种情况?提前感谢您的帮助Excel 如何防止在添加或删除行时运行工作表更改事件?,excel,vba,Excel,Vba,说到编程,我完全是个新手。我正在制作一个电子表格来获取培训信息。下面列出的代码输入用户名(来自将用户名定义为窗口用户名的模块)、日期和时间。我的问题是,当添加或删除行时,会导致sub运行。我能做些什么来防止这种情况?提前感谢您的帮助 Private Sub Worksheet_Change(ByVal Target As Range) Set Rng = Range("D11:D88") If Not Intersect(Target, Rng) Is Nothing Then Applic
Private Sub Worksheet_Change(ByVal Target As Range)
Set Rng = Range("D11:D88")
If Not Intersect(Target, Rng) Is Nothing Then
Application.EnableEvents = False
Target(1).Offset(0, 1).Value = Environ$("username")
Target(1).Offset(0, 2).Value = Date
Target(1).Offset(0, 3).Value = Time
Application.EnableEvents = True
End If
End Sub
试试这个:
Private Sub Worksheet_Change(ByVal Target As Range)
Set Rng = Range("D11:D88")
If Target.Count = 1 Then
If Not Intersect(Target, Rng) Is Nothing Then
Application.EnableEvents = False
Target(1).Offset(0, 1).Value = Environ$("username")
Target(1).Offset(0, 2).Value = Date
Target(1).Offset(0, 3).Value = Time
Application.EnableEvents = True
End If
End If
End Sub