目录

# On Error GoTo ... Resume 语句

发生错误时启用错误处理例程或恢复程序执行。

### 语法:

    On [Local] Error {GoTo Labelname | GoTo 0 | Resume Next}

### 参数:

「GoTo Labelname」: 当发生错误时，在行 "Labelname" 的开始部分启用错误处理例程。

「Resume Next」: 发生错误时，程序继续执行出错语句后面的语句。

「GoTo 0」: 在当前过程中禁用错误处理程序。

「Local」: "On error" 作用于全局范围，直到被另一个 "On error" 声明取缔之前一直有效。"On Local error" 局限于调用它的例程。本地错误处理覆盖任何之前的全局设置。当调用的例程退出时，自动取消本地错误处理，并且恢复任何之前的全局设置。

On Error GoTo 语句用于处理发生在宏中的错误。

### 示例:

    Sub ExampleReset
    On Error GoTo ErrorHandler
        Dim iNumber As Integer
        Dim iCount As Integer
        Dim sLine As String
        Dim aFile As String
        aFile = "C:\Users\ThisUser\data.txt"
        iNumber = Freefile
        Open aFile For Output As #iNumber
        Print #iNumber, "This is a line of text"
        Close #iNumber
        iNumber = Freefile
        Open aFile For Input As iNumber
        For iCount = 1 To 5
            Line Input #iNumber, sLine
            If sLine <>"" Then
                Rem
            End If
        Next iCount
        Close #iNumber
        Exit Sub
    ErrorHandler:
        Reset
        MsgBox "All files will be closed",  0,  "Error"
    End Sub

相关主题

Error-Handling Functions

Open Statement