我有一个 VBA 宏,需要运行它来初始化原始数据的每月数据转储。这很好用。
此外,我还有一个Private Sub Worksheet_Change()在每次单元格值更改时运行的步骤。这很好用。
我的问题是,当我的初始化宏进行许多更改时,它会不断触发Private Sub Worksheet_Change(). 有没有办法可以在初始化完成运行之前将其禁用?
您必须暂时禁用 eventi
Application.EnableEvents = False
然后True通过初始化宏结束将其设置回
为了确保您确实将其设置回来,您最好在初始化宏本身内部进行此设置并使用错误处理程序,如下所示:
Sub InitializingMacro ()
On Error GoTo ErrHandler
Application.EnableEvents = False
'Your code here...
ErrHandler:
Application.EnableEvents = True
End Sub
Run Code Online (Sandbox Code Playgroud)