1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
Sub Test()
'ici, le gestionnaire va gérer l'erreur de la proc appelée
On Error Resume Next
Call MacroTest1 'gère l'erreur de la proc appelée
Call MacroTest2 'gère l'erreur de la proc appelée par la proc appelée !
If Err.Number <> 0 Then
'affiche le type d'erreur
MsgBox "Erreur d'exécution '" & Err.Number & " :" & vbCrLf & Err.Description
End If
MsgBox "Les erreurs ont été gérées par le gestionnaire de cette procédure !"
'annule le gestionnaire d'erreur
On Error GoTo 0
'cet appel provoquera une erreur
Call MacroTest3
End Sub
Sub MacroTest1()
'une erreur a lieu car la feuille n'existe pas
Worksheets(Worksheets.Count + 1).Select
End Sub
Sub MacroTest2()
Call MacroTest3
End Sub
Sub MacroTest3()
'une erreur a lieu car la feuille n'existe pas
Worksheets(Worksheets.Count + 1).Select
End Sub |