Conteúdo
Índice 🔎︎

# Instrução On Error GoTo ... Resume

Ativa uma rotina de manipulação de erro após a ocorrência do erro, ou retoma a execução do programa.

### Sintaxe:

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

### Parâmetros:

GoTo Labelname: na incidência de um erro, ativa a rotina de tratamento e recuperação de erros que inicia na linha "Labelname".

Resume Next: se ocorrer um erro, retoma a execução do programa a partir da instrução imediatamente seguinte à instrução que apresentou o erro.

GoTo 0: desativa a manipulação de erros no procedimento atual.

Local: "On error" tem escopo global e permanece ativo até que seja cancelado por outra instrução "On error". "On Local error" é local à rotina que o invoca. A manipulação de erros Local sobrepõe-se à qualquer definição Global prévia. Ao invocar a saída da rotina, a manipulação de erros local será cancelada automaticamente, e qualquer definição Global prévia será restaurada.

A instrução On Error GoTo é utilizada para reagir a erros que ocorrem em uma macro.

### Exemplo:

    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, "Esta é uma linha de texto"
        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 "Todos os arquivos serão fechados",  0,  "Error"
    End Sub

Tópicos relacionados

Funções de manipulação de erros

Instrução Open