Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Gestion Erreur de Formule

1 réponse
Avatar
Catherine
Bonjour,

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.

Je vous remercie d'avance

1 réponse

Avatar
Papy Jean
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.

1°) Supprimer l'arrivée des messages:
Application.DisplayAlerts = False
......
Application.DisplayAlerts = True

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