J'aimerais savoir s'il est possible d'emp=EAcher que le=20
message d'erreur d'Excel " La formule que vous avez tap=E9e=20
contient une erreur" apparaisse. J'aimerais plut=F4t que ma=20
proc=E9dure VBA s'arr=EAte si ce message appara=EEt.
Qu'il faut rétablir bien vite, sinon en cas d'erreur, on ne s'y retrouve plus.
2°) Pour qu'une macro s'arrète en cas de problème: on error goto .... par exemple: on error goto FIN ..... FIN: End Sub Si ta macro est petite, cela suffit.
3°) Mais dans la pratique, il y a quelques précautions à prendre.
Car si ta macro est un peu importante, il est possible qu'il n'y ait pas qu'une source d'erreur et/ou qu'il y ait des cas que tu veuilles traiter différemment. Et il y a -du moins pour moi - les inévitables erreurs de programmation qui buguent. C'est pourquoi j'utilise
En début de programme on error goto NIVERR:
NIVERR: Resume NIVERRB NIVERRB: ' signaler l'erreur rencontrée et faire ce qu'il faut
Le rôle de l'instruction Resume est de permettre à une nouvelle erreur de se manifester
En cours de traitement il y a d'autres on error goto, qui ne correspondent pas forcément à des erreurs comme par exemple la détection de la présence d'un fichier en mémoire ou de la feuille d'un classeur. Par exemple
on error goto NIVA Sheets("MaBelleFeuille").Select ' on travaille sur la feuille ....... goto Ailleurs ' Si la feuille n'existe pas, on arrive ici NIVA: Resume NIVB: NIVB: on error goto NIVERR ' Sinon, on reviendra à NIVA à chaque erreur ' ouvrir la feuille: ...... ------------------------------------ Amicales salutations Papy Jean
"Catherine" a écrit dans le message de news:17b6801c418ca$3dcd1f50$ Bonjour,
J'aimerais savoir s'il est possible d'empêcher que le message d'erreur d'Excel " La formule que vous avez tapée contient une erreur" apparaisse. J'aimerais plutôt que ma procédure VBA s'arrête si ce message apparaît.
Je vous remercie d'avance
Bonjour Catherine !
Joli prénom, c'est celui de ma fille; je me devais de répondre
Il me semble que tu obtiendras l'effet demandé en combinant 3 instructions.
Qu'il faut rétablir bien vite, sinon en cas d'erreur, on ne s'y retrouve
plus.
2°) Pour qu'une macro s'arrète en cas de problème:
on error goto ....
par exemple:
on error goto FIN
.....
FIN:
End Sub
Si ta macro est petite, cela suffit.
3°) Mais dans la pratique, il y a quelques précautions à prendre.
Car si ta macro est un peu importante, il est possible qu'il n'y ait pas
qu'une source d'erreur
et/ou qu'il y ait des cas que tu veuilles traiter différemment.
Et il y a -du moins pour moi - les inévitables erreurs de programmation qui
buguent.
C'est pourquoi j'utilise
En début de programme
on error goto NIVERR:
NIVERR: Resume NIVERRB
NIVERRB:
' signaler l'erreur rencontrée et faire ce qu'il faut
Le rôle de l'instruction Resume est de permettre à une nouvelle erreur de se
manifester
En cours de traitement il y a d'autres on error goto, qui ne correspondent
pas forcément à des erreurs
comme par exemple la détection de la présence d'un fichier en mémoire ou de
la feuille d'un classeur.
Par exemple
on error goto NIVA
Sheets("MaBelleFeuille").Select
' on travaille sur la feuille
.......
goto Ailleurs
' Si la feuille n'existe pas, on arrive ici
NIVA: Resume NIVB:
NIVB:
on error goto NIVERR ' Sinon, on reviendra à NIVA à chaque erreur
' ouvrir la feuille:
......
------------------------------------
Amicales salutations
Papy Jean
"Catherine" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:17b6801c418ca$3dcd1f50$a101280a@phx.gbl...
Bonjour,
J'aimerais savoir s'il est possible d'empêcher que le
message d'erreur d'Excel " La formule que vous avez tapée
contient une erreur" apparaisse. J'aimerais plutôt que ma
procédure VBA s'arrête si ce message apparaît.
Qu'il faut rétablir bien vite, sinon en cas d'erreur, on ne s'y retrouve plus.
2°) Pour qu'une macro s'arrète en cas de problème: on error goto .... par exemple: on error goto FIN ..... FIN: End Sub Si ta macro est petite, cela suffit.
3°) Mais dans la pratique, il y a quelques précautions à prendre.
Car si ta macro est un peu importante, il est possible qu'il n'y ait pas qu'une source d'erreur et/ou qu'il y ait des cas que tu veuilles traiter différemment. Et il y a -du moins pour moi - les inévitables erreurs de programmation qui buguent. C'est pourquoi j'utilise
En début de programme on error goto NIVERR:
NIVERR: Resume NIVERRB NIVERRB: ' signaler l'erreur rencontrée et faire ce qu'il faut
Le rôle de l'instruction Resume est de permettre à une nouvelle erreur de se manifester
En cours de traitement il y a d'autres on error goto, qui ne correspondent pas forcément à des erreurs comme par exemple la détection de la présence d'un fichier en mémoire ou de la feuille d'un classeur. Par exemple
on error goto NIVA Sheets("MaBelleFeuille").Select ' on travaille sur la feuille ....... goto Ailleurs ' Si la feuille n'existe pas, on arrive ici NIVA: Resume NIVB: NIVB: on error goto NIVERR ' Sinon, on reviendra à NIVA à chaque erreur ' ouvrir la feuille: ...... ------------------------------------ Amicales salutations Papy Jean
"Catherine" a écrit dans le message de news:17b6801c418ca$3dcd1f50$ Bonjour,
J'aimerais savoir s'il est possible d'empêcher que le message d'erreur d'Excel " La formule que vous avez tapée contient une erreur" apparaisse. J'aimerais plutôt que ma procédure VBA s'arrête si ce message apparaît.