1

我正在使用 Visual Basic 在 MS Excel 中运行宏操作。在运行应用程序时,由于给定的错误输入或其他原因,它有时会崩溃或终止。现在它显示一个对话框,询问继续、调试、结束或帮助。

所以我需要从中禁用调试选项,否则它只是终止显示错误,因为选择调试将在 Microsoft Visual Basic for Applications 中使用用户。

我认为调试选项来自 MS Excel,因为在选择 End 选项后,它会显示我的应用程序错误处理程序。

请分享您的经验和建议,以在应用程序运行时禁用此 DEBUG 选项。

提前致谢。

4

1 回答 1

0

理想情况下,您会希望通过代码本身来处理所有错误;这意味着如果您的代码抛出错误或收到不正确的输入,程序将显示自定义错误通知用户该问题,或忽略该错误。简单的例子:

Sub ErrorHandling()

On Error GoTo DisplayMessage:
x = 0
y = 5 / x
GoTo TheEnd:

DisplayMessage:
MsgBox "Your x value cannot be 0"

TheEnd:
End Sub

代码会抛出错误,因为你不能做 5 / 0,但是会通过转到DisplayMessage:代码部分来处理错误。但是,如果您确实需要禁用“调试”按钮,则可以执行以下操作:

  1. 打开 VBA 编辑器
  2. 右键单击您的项目名称(如果您没有更改它,它应该是“VBAProject”)
  3. 选择“VBAProject Properties”(其中 VBAProject 是您的 vba 项目的名称)
  4. 选择“保护”选项卡,然后选中“锁定以查看项目”。
  5. 输入密码。如果您想打开 VBA 编辑器对 vba 代码进行进一步编辑,现在将需要此密码

保存并关闭您的工作簿

现在下次打开工作簿并发生错误时,调试按钮将被禁用。

于 2013-08-12T23:17:33.243 回答