Contenuto
Indice 🔎︎

# Istruzione On Error GoTo ... Resume

Quando si verifica un errore, abilita una routine di gestione degli errori oppure riprende l'esecuzione del programma.

### Sintassi:

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

### Parametri:

GoTo Labelname (Nomeetichetta): se si verifica un errore, abilita la routine di gestione degli errori che inizia alla riga "Labelname".

Resume Next: se si verifica un errore, l'esecuzione del programma continua con l'istruzione successiva a quella in cui si è verificato l'errore.

GoTo 0: disabilita la routine di gestione degli errori nella procedura in corso.

Local: "On error" ha portata globale e rimane attivo fino a che non viene cancellato da un'altra dichiarazione "On error". "On Local error" è locale rispetto alla routine che lo invoca. La routine di gestione degli errori prevale su ogni altra impostazione globale. Quando la routine che la invoca termina, la gestione degli errori locale viene cancellata automaticamente e vengono ripristinate le precedenti impostazioni globali.

L'istruzione On Error GoTo viene usata per reagire agli errori che si verificano in una macro.

### Esempio:

    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, "Questa è una riga di testo"
        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 "Tutti i file verranno chiusi",  0, "Errore"
    End Sub

Argomenti correlati

Funzioni di gestione degli errori

Istruzione Open