查看: 301  |  回复: 0
  VB6 看On Error在主程序,子程序出错也能检查出来吗?
楼主
发表于 2023年11月15日 15:55

On Error是有用的错误提示语法,它可以放在程序开头,下面列举了嵌套到2次的子程序s_2,看是否有效?

新建From1(窗体),新建Command1(按钮CommandButton),代码:

Private Sub Command1_Click()
    On Error GoTo hErr
    Call s_1
hErr:
    MsgBox "错误号:" & Err.Number & vbCrLf & Err.Description, vbCritical, "错误"
End Sub

Private Sub s_1()
    Call s_2
End Sub

Private Sub s_2()
    MsgBox 3 / 0
End Sub

Private Sub Command2_Click()
    On Error GoTo mark1
    If 1 = 2 Then
        On Error Resume Next
        Exit Sub
    End If
    Debug.Print 1 / 0    '1 = 1时不执行本行,1 = 2时这行报错。
mark1:
    Debug.Print "over"
End Sub

运行结果:

错误号:11
除数为零    16 错误

看来是有效的。毕竟Command1_Click还可能调用很多子程序。

另外Command2_Click还演示了= 1时不执行本行,1 = 2时这行报错。

您需要登录后才可以回帖 登录 | 立即注册
【本版规则】请勿发表违反国家法律的内容,否则会被冻结账号和删贴。
用户名: 立即注册
密码:
2020-2024 MaNongKu.com