【发布时间】:2016-04-29 08:47:23
【问题描述】:
我非常感谢您对此的帮助。 我们正在使用 Excel VBA 制作一些应用程序,有时,一个文件中的例程调用另一个文件中的例程。
Application.Run ActiveWorkbook.Name & "!SomeOtherRoutine"
我的问题是,另一个例程有一个编译错误(End If 缺失)。所以整个过程当然崩溃了。但是作为一个编译错误,这个错误不能被错误处理程序捕获。
有没有办法捕捉到这种错误,所以我的代码不会被中断?
【问题讨论】:
-
你试过自己运行子程序吗? IE。踢自己,而不是被最初的例行程序踢掉。
-
你能把导致错误的功能代码贴出来吗,最好的办法是修复它。
-
不,我没有,那是我同事写的子程序。显然他不是自己运行的,我信任他 :-D 我知道,这可以通过测试子程序本身来解决,但在这种情况下还没有完成。我的问题完全是出于目的,如果我能发现这种人为失败的错误。
-
不——错误处理程序用于捕获运行时错误。编译错误必须在运行的代码之前修复。您可以通过 Debug -> Compile 手动编译模块并进行检查。
-
一种预期的答案,但仍然令人心碎。非常感谢。
标签: vba excel compiler-errors