On Error GoTo
如果自本行开始后面的代码执行出错,则跳至指定位置继续执行。如:
Sub te4()
On Error GoTo con
Debug.Print "a" + 3
Debug.Print 8 - 5
con:
Debug.Print "error occur"
End Sub
On Error Resume Next
如果代码执行出错,则从出错代码的下一行代码继续执行。如:
Sub te3()
On Error Resume Next
Debug.Print 5 + 3
Debug.Print "a" + 3
Debug.Print "error occur"
End Sub
还是无法得到出错时候的行号
MsgBox ("错误发生在" &Err.Source& "。代码为" & "_" &Err.Number& "。即" &Err.Description)
====================================
ErrHandle标识出来的部分,即使没发生异常也会执行。并不等同于Java里的catch
On Error GoTo ErrHandle
do_something()
ErrHandle:
reach_here()
如果不希望ErrHandle:执行,则在它上面加个exit sub
====================================
ErrHandle:
Err.HelpFile
在Err对象中包含一个HelpFile属性 : "C:\PROGRA~1\COMMON~1\MICROS~1\VBA\VBA7\2052\VbLR6.chm"
这里有一些语言参考还是有点用的