Probleme avec gestion des erreurs en vbscript - VB/VBA/VBS - Programmation
Marsh Posté le 05-10-2006 à 09:45:17
Utilise simplement "On error resume next" ce qui fait qu'il ignorera l'erreur.
Et si tu utilise un simple script .vbs, enlève sub et end sub ;-)
Marsh Posté le 05-10-2006 à 12:04:36
Le truc c'est que s'il y a une erreur je veux effectuer une action, ca marche effectivement quand j'ignore l'erreur mais ce n'est pas le but...
Sauf erreur de ma part comme j'ai plusieurs fonctions dans mon VBS il faut que j'utilise sub non ?
Merci
Marsh Posté le 05-10-2006 à 13:54:15
Il ne faut pas confondre fonction et procédure ;-)
Là c'est une simple procédure générale après pour les fonctions, utilise "function" et non "sub".
"sub" tu le met quand c'est du VBA, VB6... En VBS si tu le mets ca ne fonctionne pas.
Marsh Posté le 05-10-2006 à 14:16:02
En VBS le retour erreur ne peut pas se faire comme je le fais ?
Pour faire comme ca il faut forcément que je passe par du VB6/VBA ?
Merci
Marsh Posté le 05-10-2006 à 15:10:02
Là je pense qu'il vaut mieux attendre la réponse d'autres personnes.
Sinon tu devrais pouvoir trouver ta réponse sur le site vbfrance : http://www.vbfrance.com/codes_cate [...] PT/36.aspx
Marsh Posté le 10-10-2006 à 14:19:16
Si ta sub est le composant unique du script, il faut virer les wub / endsub
Les Sub marchent en VBS, mais il faut une "boucle principale" qui n'est ni une sub, ni une fonction.
Marsh Posté le 10-10-2006 à 14:23:59
Correction : En fait les labels ne sont pas utilisables en VBS.
Pour le traitement d'erreur, utilise un truc du genre :
On Error Resume Next 'Pour éviter l'interruption du script (l'affichage d'une erreur)
Call TTestProc(1)
If err.number = 0 Then
MsgBox "marche !"
Else
MsgBox "erreur !"
End If
Marsh Posté le 20-09-2006 à 15:31:40
Bonjour.
Je débute en VBScript et j'ai un petit problème.
J'ai fait un script qui marche mais la gestion des erreurs ne marche pas avec les GoTo.
Exemple :
Exemple plus parlant de mon pb :
Ne marche pas (test.vbs(2, 15) Microsoft VBScript compilation error: Syntax error) :
Sub test()
On Error Goto SortieErreur
CommandeQuiN'ExistePas
MsgBox "marche !"
Exit Sub
SortieErreur:
MsgBox "erreur !"
End Sub
Marche (sortie propre du programme, il ne se passe rien) :
Sub test()
On Error Resume Next
CommandeQuiN'ExistePas
MsgBox "marche !"
End Sub
Il indique l'erreur de syntaxe sur le mot SortieErreur, comme s'il ne reconnaissait pas en lui un label de GoTo.
Quelqun a une idée pour que je puisse faire un goto en cas d'erreur dans la fonction ?
Merci