Sub ProcédureMalFoutue() '...car une ProcédureBienFoutue ne plante pas !
'Déclarations et autres préliminaires :
Dim i&, quelquechose&, u#
quelquechose = 12
Randomize
For i = 1 To quelquechose
'Code
On Error GoTo E '... puis la ligne qui coince :
u = -i / CDbl((Rnd < 0.75)) '(Division par zéro, en moyenne une fois sur quatre)
On Error GoTo 0
'Code à ignorer en cas d'erreur :
'Ceci, par exemple...
MsgBox "Pas de plantage dans la boucle " & i & "." & vbLf & "u = " & u
R: 'Code à exécuter même en cas d'erreur :
'Cela...
'...
Next
Exit Sub
E: 'Gestion de l'erreur :
'Bla, bla, bla... Par exemple :
MsgBox "Ça merde dans la boucle " & i & "." & vbLf & "u = " & u
'Retour au programme
Resume R
End Sub