Bonjour,
je suis développeur de solution technique sur mon temps libre et dessinateur professionnel sous autocad depuis 2 ans et développeur sur mon temps libre pour gagner du temps au travaille. Je programme essentiellement en VBA pour autocad, mais ça peu importe puisque ma question est d'ordre générale :
Mes programmes commence à être long (pour moi oui c'est long) environ 400 lignes pour la procédure principale avec 4 ou 5 procédures récurrentes auxquelles je fais appelle de temps en temps et parfois 1 ou 2 forms. Pour des raisons lié à la gestion des interceptions utilisateur (question posée à l'utilisateur d'autocad), je dois faire des gestions d'erreur partielles à l'intérieur d'une gestion générale par exemple :
voilà pour la forme générale... J'en arrive à mon problème : avec une telle structure si j'ai une erreur pas encore gérée comment faire pour savoir sur quelle ligne elle intervient ? Car je peux trouvé le type d'erreur mais pas le lieu... et actuellement je me fait chié à remplacer les "on error goto gestion" par "'on error goto gestion" pour pouvoir savoir ou se trouve l'erreur mais j'aimerais faire ça plus simplement. J'ai lu les aides sur le site mais j'ai pas trouvé de solution. J'ai également tenté l'espion mais dès que j'ai une erreur qui va dans la gestion, l'espion arrête le code au niveau de la gestion mais pas avant...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 on erreur goto gestion_erreur on error resume next select case err.number case 121 case 3221654 end select err.clear on erreur goto gestion_erreur on error resume next select case err.number case 121 case 3221654 end select err.clear on erreur goto gestion_erreur on error resume next select case err.number case 121 case 3221654 end select err.clear on erreur goto gestion_erreur gestion_erreur : select case err.number case 321 Debug.Print Err.Number, Err.Description, Err.Source case 3516432 end select
Partager