On Error GoTo ... Resume Statement

Enables an error-handling routine after an error occurs, or resumes program execution.

Syntax:

On Error Statement diagram


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

Parameters:

GoTo Labelname: If an error occurs, enables the error-handling routine that starts at the line "Labelname".

Resume Next: If an error occurs, program execution continues with the statement that follows the statement in which the error occurred.

GoTo 0: Disables the error handler in the current procedure.

Local: "On error" is global in scope, and remains active until cancelled by another "On error" statement. "On Local error" is local to the routine which invokes it. Local error handling overrides any previous global setting. When the invoking routine exits, the local error handling is cancelled automatically, and any previous global setting is restored.

The On Error GoTo statement is used to react to errors that occur in a macro.

Example:


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

Please support us!