Instruction On Error GoTo ... Resume

Active une routine de gestion des erreurs suite à une erreur, ou reprend l'exécution du programme.

Syntaxe :

Diagramme de déclaration d'erreur


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

Paramètres :

GoTo Labelname : si une erreur se produit, active la routine de gestion des erreurs Ă  partir de la ligne "Labelname".

Resume Next : si une erreur se produit, le programme continue en exécutant l'instruction qui suit l'instruction dans laquelle l'erreur s'est produite.

GoTo 0 : désactive le gestionnaire d'erreur dans la procédure active.

Locale : "On error" est de portée global et reste actif jusqu'à ce qu'il soit annulé par une autre instruction "On error". "On local error" est local à la routine qui l'invoque. La gestion de l'erreur locale écrase le paramètre global précédent. Lorsque la routine invoquée existe, la gestion de l'erreur locale est annulée automatiquement et tout paramètre global précédent est restauré.

L'instruction On Error GoTo est utilise pour réagir aux erreurs qui surviennent dans une macro.

Exemple :


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, "Ceci est une ligne de texte."
    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

Aidez-nous !