标题: 请教下On Error Resume Next的用法 [打印本页] 作者: zte_boy 时间: 2008-4-2 13:41 标题: 请教下On Error Resume Next的用法 On Error Resume Next
'Try to create an instanse of the reporter engine's class
Execute "Set oReporter = New " & sType & "Engine"
If Err.Number <> 0 Then
bResult = False
Reporter.ReportEvent micFail, "ReporterManagerClass StartEngine", "Failed to create instance : " & sType
End If
不知道这样理解对不对。作者: loho1968 时间: 2008-4-3 09:46
On Error Resume Next 表示出现错误后,继续执行程序
VB中还有 On Error goto aaa
上述2种都叫“错误陷阱”,用于出现错误时进行处理
On Error Resume GoTo 0 表示取消对错误陷阱的设置。作者: hsjzfling 时间: 2008-4-3 10:21
写个简单的例子来说明吧,理解起来更容易点~
On Error Resume Next
Err.Clear
msgbox "Test is running now."
Call ErrFunc
If Err.Number<>0 Then
msgbox "Error occured indeed"
msgbox "The error description is: "&vbcrlf&Err.Description
End If
On Error GoTo 0
Function ErrFunc()
msgbox "ErrFunc function does work."
Browser("I'm not in the OR~").Page("xx").WebList("oo").Select 1000 'Error will occur here
msgbox "My God...No Error occurred?!"
End Function作者: hsjzfling 时间: 2008-4-3 10:32
LZ可以根据这个小例子自己尝试下加不加On Error GoTo 0有什么区别,也可以看看注释掉ErrFunc中那句会报错的代码之后,程序又是怎样运行的~作者: zte_boy 时间: 2008-4-3 14:55
我试过了,没发现有什么区别啊,呵呵作者: hsjzfling 时间: 2008-4-3 15:08
你在On Error GoTo 0下面再随便加句会报错的代码,比如再写个Call ErrFunc,然后再分别执行有On Error GoTo 0与没有的区别~~