当我在VBA for Excel 2013中遇到运行时错误时,我的代码会定期停止运行。例如,当我进行下拉选择时,Worksheet_Change(ByVal Target As Range)子代码中的代码不再执行。
我已经尝试点击IDE中的重置按钮,这通常有效,但并非总是如此,我必须关闭Excel并重新打开它,然后代码将会触发。
必须有一种方法可以重置而无需完成所有这些。
答案 0 :(得分:2)
如果您正在设置
Application.EnableEvents = False
并且您的代码在此之后的某个时刻崩溃,但在重置为True
之前,将不再捕获任何事件。
即使在重置VB项目后,False
设置仍将保留。重置它的唯一方法是运行一些代码将其设置回True
。
您可以从VBE立即窗格运行:
Application.EnableEvents = True
每当您在代码中关闭事件处理时,始终包含错误处理是一个好习惯,因此您可以在代码退出之前重新启用事件处理。