Resume, instruction

Mise à jour : novembre 2007

Reprend l'exécution dès la fin d'une routine de gestion des erreurs.

Resume [ Next | line ]

Éléments

  • Resume
    Obligatoire. Si l'erreur s'est produite dans la même procédure que le gestionnaire d'erreurs, l'exécution reprend par l'instruction qui a engendré l'erreur. Si l'erreur s'est produite dans une procédure appelée, l'exécution reprend par la dernière instruction qui a appelé la procédure contenant la routine de gestion des erreurs.

  • Next
    Facultatif. Si l'erreur s'est produite dans la même procédure que le gestionnaire d'erreurs, l'exécution reprend par l'instruction qui suit celle qui a engendré l'erreur. Si l'erreur s'est produite dans une procédure appelée, l'exécution reprend par l'instruction qui suit celle qui a appelé la procédure contenant la routine de gestion des erreurs (ou l'instruction On Error Resume Next).

  • line
    Facultatif. L'exécution reprend à la ligne spécifiée dans l'argument line requis. L'argument line est une étiquette de ligne ou un numéro de ligne et doit se trouver dans la même procédure que le gestionnaire d'erreurs.

Notes

Si vous utilisez une instruction Resume à un autre endroit que dans la routine de gestion des erreurs, une erreur se produit.

L'instruction Resume ne peut pas être utilisée dans toutes les procédures qui contiennent une instruction Try...Catch...Finally.

Exemple

Cet exemple utilise l'instruction Resume pour terminer la gestion des erreurs dans une procédure, puis reprend l'exécution par l'instruction qui a généré l'erreur. L'erreur numéro 55 est générée pour illustrer l'utilisation de l'instruction Resume.

Sub ResumeStatementDemo()
  On Error GoTo ErrorHandler   ' Enable error-handling routine.
  Dim x As Integer = 32
  Dim y As Integer = 0
  Dim z As Integer
  z = x / y   ' Creates a divide by zero error
  Exit Sub   ' Exit Sub to avoid error handler.
ErrorHandler:     ' Error-handling routine.
  Select Case Err.Number   ' Evaluate error number.
      Case 6   ' "Divide by zero" error.
        y = 1 ' Sets the value of y to 1 and tries the calculation again.
      Case Else
        ' Handle other situations here....
  End Select
  Resume   ' Resume execution at same line
  ' that caused the error.
End Sub

Configuration requise

Espace de noms : Microsoft.VisualBasic

Assembly : bibliothèque Runtime Visual Basic (dans Microsoft.VisualBasic.dll)

Voir aussi

Référence

Try...Catch...Finally, instruction (Visual Basic)

Error, instruction

On Error, instruction (Visual Basic)