Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1530 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  On error VBA

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

On error VBA

n°1302306
kissmytoe
Posté le 09-02-2006 à 17:09:32  profilanswer
 

Sub|Function SomeName()
2     On Error GoTo Err_SomeName          
3     ' Code to do something here.
4 Exit_SomeName:                          
5     Exit Sub|Function                    
6 Err_SomeName:                            
7     MsgBox Err.Number & Err.Description  
8     Resume Exit_SomeName              
9 End Sub|Function
 
Ce que je comprends du traitement d'erreur en VBA c'est qu'on a pas le choix de mettre nos erreurs a la fin ??
J'aimerais pouvoir dire (pour telle et telle ligne c'est Err_nomQuelquonque, mais apres pour ces autres lignes c'est ... (Finalement j'aimerais bien avoir le try and catch de java et de c qui est beaucoup plus efficace GRRRR)
J'ai une grosse function et je ne veux pas envoyer toutes les erreurs au même traitement d'erreur.
 
Je ne sais pas si mon message est clair, mais je l'espère :) hehe
 
Merci d'avance à ceux qui prenne le temps de lire mon message.  

mood
Publicité
Posté le 09-02-2006 à 17:09:32  profilanswer
 

n°1302351
galopin01
Posté le 09-02-2006 à 17:39:32  profilanswer
 

Quel est le le problème ?

Code :
  1. On Error GoTo Err_SomeName
  2. ...blabla
  3. Exit Sub|Function                   
  4. Err_SomeName:
  5. Select case Err
  6. Case 1: "DoThis": x= 1
  7. Case 7: "DoThat": x=1
  8. Case 23: "DoElse": x= 2
  9. Case 99: "DoOtherAndExitProcess"
  10. Case Else: x = 3
  11. End Select
  12. If x> 1 Then
  13. Resume
  14. Else
  15. MsgBox "blabla"
  16. End if
  17. End Sub|Function

Ok ?


Message édité par galopin01 le 09-02-2006 à 20:27:15

---------------
roger
n°1302409
Carbon_14
Posté le 09-02-2006 à 18:43:17  profilanswer
 

"c'est qu'on a pas le choix de mettre nos erreurs a la fin ??" j'ai eu du mal à comprendre, je pensais que l'exemple était trop clair.
 
La question semble être : "comment peut-on regrouper dans un module unique le traitement de toutes les erreurs du "projet" ?
 
L'exemple juste au dessus montre qu'on peut, quand on fait un  
On Error GoTo Err_SomeName
à l'adresse Err_SomeName, rien n'empêche de faire appel à une fonction qui réagira (en "externe", disons de façon isolée, autonome, .. [trouve pas le bon mot]) selon les paramètres qu'on lui passe, puis faire un resume selon le contexte (resume next, resume bidule).
 
En se débrouillant avec l'erreur passée en argument, les paramètres "contextuels", on peut afficher l'erreur dans le bon "mode".

n°1303056
kissmytoe
Posté le 10-02-2006 à 15:57:33  profilanswer
 

Merci à vous deux ;)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  On error VBA

 

Sujets relatifs
VBA - Macro supprimer ligne[MySQL4 vers Oracle 10g]error ORA-00907 migration avec OMWB
[VBA] Passer une variable d'un userform à un autreTest si conersion possible VBA
[VBA] n'est pas vide, contient ,commence par ...VBA - Filtrer sur plusieurs champs
export graphiques vers word VBAEXCEL/VBA Comment déterminer la position de la cellule précédente
[VBA] envoie de mail + format du mailVBA On error (Peut-on afficher l'erreur)
Plus de sujets relatifs à : On error VBA


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR