【发布时间】:2014-12-09 17:21:51
【问题描述】:
我知道您可以使用 Ctrl+Break 手动停止正在运行的 VBA 宏,但是如果满足特定条件,有没有办法让代码自动停止? exit function / exit sub 不起作用,因为它们只是终止调用它们的方法。
例如,
sub a
call b
msgbox "a complete"
end sub
sub b
call c
msgbox "b complete" 'this msgbox will still show after the `exit sub` in 'c'
end sub
sub c
msgbox "entering c"
exit sub 'this will only `exit sub` 'c', but not 'a' or 'b'
msgbox "exiting c"
end sub
'OUTPUT:
'entering c
'b complete
'a complete
我想我可以把这些sub's 变成function's 并利用返回码来知道方法是否成功执行,但是有没有更简单的方法来做到这一点?
【问题讨论】:
-
作为一般提示,
goto不好。不要使用它。
标签: vba excel error-handling