Gestion des erreurs - VB/VBA/VBS - Programmation
Marsh Posté le 06-12-2007 à 11:03:34
La gestion d'erreurs se fait comme suit, par exemple :
Sub Bidule() labelDeLigne: |
Marsh Posté le 17-12-2007 à 15:19:33
oui mais ceci c'est pour du VB et pas pour du Vb car quand je met
On Error Goto labelDeLigne
rem test si la listes des ordinateurs existent
If not objFSO.FileExists("ListeOrdi.txt" ) Then
WScript.Echo "Fichier ListeOrdi.txt pas présent pour continuer à executer le script"
Wscript.quit
end if
labelDeLigne:
Select Case Err.Number
Case 1111
Resume Next
' renvoie à la ligne de code <instruction suivante> pour poursuivre l'exécution du code
Case 11
MsgBox "Une division par zéro est survenue dans l'une de vos formules"
' on sort de la procédure par le End Sub
Case Else
MsgBox Err.Description
' on sort de la procédure par le End Sub
End Select
End Sub
il me sort une erreur sur ligne 2 cad On Error Goto labelDeLigne
Marsh Posté le 17-12-2007 à 15:22:36
j'aimerai définir une commande a executer quand il y a une erreur dans l'ensemble du script et pas dans un sub.
Marsh Posté le 17-12-2007 à 15:23:04
skoizer a écrit : J'ai trouvé comment ne pas arreter un script lors d'une erreur avec ça : |
Captain Obvious, to the rescue !
On Error Resume Next, traduit en français, veut dire "Si Erreur, Continue ligne suivante", donc c'est logique... Sinon le truc de tegu devrait fonctionner, quelque soit la version de VB, c'est la design pattern standard pour la gestion d'erreurs....
Marsh Posté le 05-12-2007 à 18:03:41
bonjour,
J'ai trouvé comment ne pas arreter un script lors d'une erreur avec ça :
On Error resume next
Le souci c'est que cela me continu quand même le script et je ne voudrais pas.
est il possible de recuperer les erreur dans un sub et d'ecrire dans un fichier les erreurs survenu.
par exemple
on error recuperror()
sub recuperror()
Set objFile = objFSO.OpenTextFile(strPathtoTextFile & "erreur.txt", ForAppending,true)
objFile.WriteLine(err.description)
end sub
Une idée
Merci