VBA异常处理 On Error GoTo 0
当我们遇到异常后,开始希望进行相应处理,执行到后面又需要取消前面的异常处理,即禁用异常处理,可以通过On Error GoTo 0来实现。即:第一句代码需要进行异常处理,第二句代码不需要进行异常处理,也就是在第二句代码的位置取消(禁用)异常处理。
示例
Sub sub6()
On Error GoTo handle1
a = 4 / 2 '这一句需要进行异常处理
'后面的代码出现错误后,不再跳转到handle标签
On Error GoTo 0
b = 5 / 0 '这一句不需要进行异常处理
Debug.Print "继续"
Exit Sub
handle1:
Debug.Print "除数不能为0"
End Sub
运行结果:
弹框报错:除数不能为0。
说明GoTo 0这句成功取消了前面的GoTo handle1。
此例仅用于说明GoTo 0的作用,正常逻辑下不会这么写代码。