【问题标题】:VB6 On Error GoTo Line x or Exit DoVB6 On Error GoTo Line x or Exit Do
【发布时间】:2018-01-11 15:19:26
【问题描述】:

我的代码中有一个Do Until 循环,在某些情况下可能会出错。但是由于错误,我只希望代码退出Do Until 循环并继续执行其余的子例程。

我尝试过使用On Error Exit Do,但这说明

预期转到或继续

然后我尝试使用On Error GoTo 5865,因为 5865 是循环之后需要继续执行的行,但是,这表示

标签未定义

我怎样才能做到这一点?

【问题讨论】:

    标签: error-handling vb6 goto


    【解决方案1】:

    您在 SUB 或 FUNCTION 的顶部声明了一个错误捕获器,即:

    On Error Goto ErrTrap
    

    在这种情况下,“ErrTrap”是一个标签,它通常位于您例程的底部:

    ErrTrap:
    
    If Err.Number = ... Then
       ...
       Resume AfterError ' another label
    End If
    
    MsgBox("Error blah blah")
    

    在 "ErrTrap:" 上方放置一个

    Exit SubExit Function 相应

    并且您可以将“AfterError:”放置在您希望代码在处理错误后恢复的任何位置。

    这是对一个更复杂的主题的简化 - 有很多错误处理选项,包括行号捕获、继续下一步等,但这应该足以让您获得现在想要的东西。研究该主题以获取更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-12-18
      • 1970-01-01
      • 2015-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多