请教:
在vb的某个sub或function模块中,如果出现了错误(例如:有on error goto类似语句)时,怎样可以
1.保留错误继续执行后面代码,并且再次出现错误时仍可以进行捕捉?
或者
2.清除on error捕捉的错误,继续运行下面的代码?各位,俺是初学者,请高手们劳个烦指点指点,如网上有资料的话,提供个网址,小弟自己去查也行!
谢谢!
在vb的某个sub或function模块中,如果出现了错误(例如:有on error goto类似语句)时,怎样可以
1.保留错误继续执行后面代码,并且再次出现错误时仍可以进行捕捉?
或者
2.清除on error捕捉的错误,继续运行下面的代码?各位,俺是初学者,请高手们劳个烦指点指点,如网上有资料的话,提供个网址,小弟自己去查也行!
谢谢!
On Error Resume Next
Dim a As Integer, b As Byte
a = 1
a = 32767 + 1 '这句会产生溢出错误,但是由于上面有了On Error Resume Next语句,所以错误被忽略,继续执行下面的语句
MsgBox "a=" & a
On Error GoTo sumerr
b = 1
b = 255 + 1 '这句也会产生溢出错误,由于上面有On Error GoTo sumerr语句,所以下面的Debug.Print语句不会被执行,直接跳转到sumerr:
MsgBox "b=" & b
Exit Sub
sumerr:
MsgBox "错误描述:" & Err.Description
End Sub
On Error Resume Next
Dim a As Integer, b As Byte
a = 1
a = 32767 + 1 '这句会产生溢出错误,但是由于上面有了On Error Resume Next语句,所以错误被忽略,继续执行下面的语句
MsgBox "a=" & a
On Error GoTo sumerr
b = 1
b = 255 + 1 '这句也会产生溢出错误,由于上面有On Error GoTo sumerr语句,所以下面的MsgBox语句不会被执行,直接跳转到sumerr:
MsgBox "b=" & b
Exit Sub
sumerr:
MsgBox "错误描述:" & Err.Description
End Sub
sumerr:
MsgBox "错误描述:" & Err.Description
中加上这样一句,那还能正常运行吗?Private Sub Form_Load()
Line:
On Error Resume Next
Dim a As Integer, b As Byte
a = 1
a = 32767 + 1 '这句会产生溢出错误,但是由于上面有了On Error Resume Next语句,所以错误被忽略,继续执行下面的语句
MsgBox "a=" & a
On Error GoTo sumerr
b = 1
b = 255 + 1 '这句也会产生溢出错误,由于上面有On Error GoTo sumerr语句,所以下面的MsgBox语句不会被执行,直接跳转到sumerr:
MsgBox "b=" & b
Exit Sub
sumerr:
MsgBox "错误描述:" & Err.Description
goto Line
End Sub我在end sub之前继续一个循环,然后循环中又要捕捉一次错误(此时因第一次溢出的错误并未消除),然后程序就会出错。能否有方法在循环中不断捕捉错误(不执行end sub或exit sub之类语句)?
像上例就会出现连续两次的溢出错误!第一次可以on error resume,但是第二次就会报错,怎样解决这个问题呢?