VBA异常处理 基本结构

语法

On Error GoTo 标签
  可能出现异常的代码
  Exit Sub
标签:
  异常处理代码

标签为自定义名称,实际上就表示一个位置。

标签: 表示这个位置

如果运行代码没有出现错误,则不会跳转到标签;如果出现错误,则会跳到标签处。

Exit Sub用于表示结束当前过程,如果没有Exit Sub,则运行代码没有出现错误也会继续执行标签指示的代码。


示例:

Sub sub2()
  On Error GoTo handle1
  a = 4 / 0
  Debug.Print "继续1"
  Exit Sub
handle1:
  Debug.Print "除数不能为0"
  Debug.Print "继续2"
End Sub

输出结果:

除数不能为0
继续2

不会出现错误提示框。

异常处理保证了程序不会终止执行。