On erreur sans GOTO

Signaler
Messages postés
10
Date d'inscription
vendredi 27 septembre 2002
Statut
Membre
Dernière intervention
25 février 2008
-
Messages postés
10
Date d'inscription
vendredi 27 septembre 2002
Statut
Membre
Dernière intervention
25 février 2008
-
Bonjour,

je cherche comment faire un On erreur ou autre fonction qui me permet de lancer un msgbox sans l'utilisation d'un goto.

du style :

if err = 91 then
 msgbox "L'information entré n'est pas dans la liste"
 else
 ....
end if

10 réponses

Messages postés
831
Date d'inscription
samedi 15 mai 1999
Statut
Modérateur
Dernière intervention
18 juillet 2009

Met un :
On Error Resume Next

Voici un exemple d'utilisation :

On Error Resume Next
'... ton code qui peut générer une erreur
If err.Number <> 0 Then
  ' Il y a eu une erreur
  MsgBox "L'information entré n'est pas dans la liste"
  err.clear ' Pour effacer l'erreur
Else
  'Pas d'erreur
End If


A++

Nix :-p
0
Messages postés
10
Date d'inscription
vendredi 27 septembre 2002
Statut
Membre
Dernière intervention
25 février 2008

Ben non!

Si je met un on error next, mon erreur sera pas traité et mes informations finales sont fausses.

Il font que je retourne au début de mon sub
0
Messages postés
831
Date d'inscription
samedi 15 mai 1999
Statut
Modérateur
Dernière intervention
18 juillet 2009

Bah déjà à mon avis, c pas normal d'utiliser une erreur comme une fonctionnalité (c'est l'impression que j'ai en lisant ton explication) Une erreur doit rester occasionelle et pas être utilisée pour faire fonctionner ta gestion, mais avec ce que je t'ai donné, tu peux gérer ça très facilement et ta demande etait de ne pas utiliser de GOTO donc ne pas revenir à une étiquette comme tu veux le faire maintenant, dans ce cas utilise le GOTO.
A mon avis, tu devrais revoir le fonctionnement de ta fonction parce que cela m'a l'air bancale comme solution.
Avec le On Error Resume Next, ton erreur sera traitée avec le code que je t'ai donné, il suffit juste de placer le If au bon endroit et de mettre ta gestion d'erreur dedans.

Au fait, de rien

A++

Nix :-p
0
Messages postés
10
Date d'inscription
vendredi 27 septembre 2002
Statut
Membre
Dernière intervention
25 février 2008

je t'explique pkoi je ne veux pas de GOTO, c juste que je suis en BTS informatique et tout GOTO est interdit car le GOTO n'est pas beau dans un code.

j'utilise une erreur car, je regarde dans un XML si un numéro existe et si il existe pas, il me mets un erreur et le logiciel plante. je veux juste qu'aulieu de me mettre l'erreur 91, il me mette resaisir le numéro dans e textbox.
0
Messages postés
831
Date d'inscription
samedi 15 mai 1999
Statut
Modérateur
Dernière intervention
18 juillet 2009

C'est terrible ça, même pas un "merci quand même d'avoir répondu"... La politesse est vraiment à revoir dans ce forum

Bref passons, dans ce cas mets :

On Error Resume Next

'... ton code qui appel le XML et qui peut générer une erreur

If Err.number =  91 Then
    ' Il y a eu une erreur
    MsgBox "L'information entré n'est pas dans la liste"
    Err.Clear ' Pour effacer l'erreur
    Exit Sub ' Ou Exit Function selon dans quoi se trouve ta fonction
Else
    ' Pas d'erreur
    ' Mets ton code
End If


Encore une fois, DE RIEN

A++

Nix :-p
0
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
133
Hum, apparement, la politesse n'est vraiment pas de mise ici. Tu fais bien de le faire remarquer Nix, car peu de personnes te remercient après que tu leurs aient donné la solution de leurs problèmes.

DARK SIDIOUS
0
Messages postés
10
Date d'inscription
vendredi 27 septembre 2002
Statut
Membre
Dernière intervention
25 février 2008

Merci, je vais tester.

Mais j'avais fait un test avec le if err.number = 91

et il me mettait l'erreur 13 type incompatible
0
Messages postés
831
Date d'inscription
samedi 15 mai 1999
Statut
Modérateur
Dernière intervention
18 juillet 2009

Ok pas de pb, au pire, balance ta fonction dans le forum, on regardera ce qu'on peut faire

T'as vu, ct pas si dure que ça un ptit merci {;)]

A++

Nix :-p
0
Messages postés
831
Date d'inscription
samedi 15 mai 1999
Statut
Modérateur
Dernière intervention
18 juillet 2009

Bah ca risque de changer, parce que je vais donner de nouveaux pouvoirs au cops quand j'aurai le temps de finir le dévelopement d'une nouvelle version du site
Je pense que je mettrai un détecteur de courtoisie pour le forum, du genre un liste de mot clé qui permettrons de signaler si le post est courtois ou pas lol
J'oblige personne à répondre aux questions alors la moindre des choses c'est d'avoir un minimum de reconnaissance envers ceux qui aident en répondant aux questions

A++

Nix :-p
0
Messages postés
10
Date d'inscription
vendredi 27 septembre 2002
Statut
Membre
Dernière intervention
25 février 2008

Ok merci, mais j'en avais tellement marre de chercher. Merci bcp
0