我希望能够在调用我的 VBA 代码时打开/关闭进入中断模式的选项。我知道这样做的唯一方法是在代码的所有“入口点”设置断点,或者让这些方法中的每一个都调用一个单独的函数以进行调试。
“入口点”可能是按钮点击或工作表事件,其中有很多。
例如,我可以这样做:
Private Sub bt1Click()
callThisOnEveryMethod
'other code
End Sub
Private Sub bt2Click()
callThisOnEveryMethod
'other code
End Sub
'etc, repeat 100 times
Private Sub callThisOnEveryMethod()
'set breakpoint on this method
End Sub
这并不是很理想,因为我依赖于我将其添加到每个方法和每个后续方法中。我真的不相信自己能以这种方式获得 100% 的结果,而且仅出于调试目的而出现很多混乱。我也可以在此处添加其他代码,甚至将其包装在if MY_GLOBAL_DEBUG_BOOLEAN then
类型语句中,但我仍然需要将此代码(或调用方法)添加到我编写的每个可以启动 VBA 执行的方法中。
想象一下,我可能有 100 个方法可以作为 VBA 代码执行的开始。
每次我想这样做时,在每个方法上设置和删除断点也不理想,因为要打开/关闭的数量。
我想以某种方式告诉 VBA “无论何时开始执行代码,立即中断并进入调试模式,而不管断点、断言如何,并且不需要每个方法都有很多额外的代码。”
这可能吗?