"On error Resume next" [Résolu]

pulpul74 77 Messages postés jeudi 11 octobre 2007Date d'inscription 27 septembre 2010 Dernière intervention - 15 nov. 2007 à 15:45 - Dernière réponse : pulpul74 77 Messages postés jeudi 11 octobre 2007Date d'inscription 27 septembre 2010 Dernière intervention
- 27 sept. 2010 à 09:42
Bonjour.
J'aimerai savoir quelle portée a la commande On error Resume Next dans un code.
Est ce que cette ligne ne fonctionne que pour la ligne suivante, ou bien sur tout le code présent après celle ci, ou juste la procédure...
J'ai déja utilisé celle ci pour éviter l'arret du programme sur un bug que je n'arrivais pas à enlevé, je l'ai mis en début de page. Mais je ne sais pas a quelle ligne de programme cela s'applique, car parfois certaines erreur apparaissait quand meme.
Afficher la suite 

8 réponses

Répondre au sujet
cs_casy 7745 Messages postés mercredi 1 septembre 2004Date d'inscription 24 septembre 2014 Dernière intervention - 15 nov. 2007 à 16:01
+3
Utile
elle s'applique, tout comme toutes les instructions On Error d'ailleurs, à partir de la ligne suivante jusqu'à la prochaine instruction On Error ou la fin de la procédure ou fonction.

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #   
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_casy
GEDDi 209 Messages postés lundi 22 novembre 1999Date d'inscription 3 juillet 2008 Dernière intervention - 15 nov. 2007 à 16:06
+3
Utile
Un conseil!
Afin de stopper l'effet d'un on error resume next qui agit de manière un peu trop globale, à la fin de ta fonction locale, ajoutes lui un coup de 'on error goto 0' et l'effet du resume sera alors bien local et non plus global ( piège assez général dans lequel bon nombre de developpeurs sont tombés ) ^^

Gérôme GUILLEMIN
Auteur du langage FBSL
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de GEDDi
Charles Racaud 3181 Messages postés dimanche 15 février 2004Date d'inscription 9 avril 2017 Dernière intervention - 15 nov. 2007 à 16:20
+3
Utile
Salut,

Si tu est sous .net, utilise plutot des try ... catch

__________
Kenji
(
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Charles Racaud
pulpul74 77 Messages postés jeudi 11 octobre 2007Date d'inscription 27 septembre 2010 Dernière intervention - 15 nov. 2007 à 17:02
+3
Utile
Ok merci beaucoup pour vos réponse, cela m'éclaire bien!!
je vais essayé d'appliquer vos conseil, merci!
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de pulpul74
cs_labk92 12 Messages postés dimanche 16 mars 2003Date d'inscription 29 juillet 2010 Dernière intervention - 26 nov. 2009 à 19:11
0
Utile
Bonjour,

j'utilise des "on error goto X" dans une partie de mon code mais pas partout. Comme l'a précisé Pulpul74, il y a des erreurs qui apparaissent quand même pour diverses raisons. Le problème est que l'application du coup se ferme. Et donc j'ai des utilisateurs qui se plaignent de voir à réouvrir l'application à chaque erreur, ce qui n'est pas toujours très agréable.

Comment faire justement pour rendre global le "on error goto..." ?

Merci beaucoup


Oublier, c'est trahir...(Génocide Arménien 1915)
Commenter la réponse de cs_labk92
cs_nitho 130 Messages postés jeudi 16 avril 2009Date d'inscription 8 décembre 2015 Dernière intervention - 27 nov. 2009 à 22:40
0
Utile
il suffit de mettre on error resume next à chaque début de procédures et de fonction

nitho l'amateur
Commenter la réponse de cs_nitho
esisajiji 15 Messages postés mercredi 1 avril 2009Date d'inscription 10 avril 2011 Dernière intervention - 26 sept. 2010 à 13:52
0
Utile
salut,
svp j'ai un blem le "error resume next" ne marche pas c'est moi comme il faut
voila mon code
Private Sub Command1_Click()
Dim rs As Recordset
Dim db1 As Database
Set db1 = OpenDatabase(dbName1)
On Error Resume Next
Set rs = db1.OpenRecordset("Utilisateur", dbOpenDynaset)
If (Err = 0) Then
rs.AddNew
rs(0) = Text1.Text
rs(1) = Text2.Text
rs.Update
MsgBox "adjontion bien faite"
Else
MsgBox "utilsateur existe deja"
rs.Close
db1.Close
End If
End Sub

le problem c'est que si j'ai un utilisateur qui existe deja je vois pas le mesg "utilisateur existe deja" mais je vois "adjonction bien faite" sachant que k'ajout ne se fait pas.
SVP comment faire pr regler ces msgbox
Commenter la réponse de esisajiji
pulpul74 77 Messages postés jeudi 11 octobre 2007Date d'inscription 27 septembre 2010 Dernière intervention - 27 sept. 2010 à 09:42
0
Utile
Essaye au lieu de mettre
If (err=0) then

met plutot cette ligne :
If Err.Number=0 then
Commenter la réponse de pulpul74

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.