J'aimerais savoir si Excel VBA permet d'afficher un message d'erreur si on exécute une macro avant l'autre
J'ai deux macro :
- TransfertAMDEC --> Macro à exécuter en première
- CommandButtonTransfert2 --> Macro à exécuter en deuxième
Je voudrais que si on vient sans faire exprès cliquer sur CommandButtonTransfert2 sans avoir cliquer sur TransfertAMDEC avant, qu'il y est un message d'erreur du genre "Veuillez cliquer sur TransfertAMDEC avant CommandButtonTransfert2"
Merci d'avance à ceux qui regarderont cette discussion,
Bonjour.
Essayez If Not Flag Then Exit Sub dans la seconde procédure.
Ce n'est pas très orthodoxe d'utiliser des opérateurs arithmétiques ou relationnels dans une expression ne comportant que des termes Boolean.
Le plus simple est de gérer ça avec un flag de sécurité.
Vous déclarez une variable Public, par exemple Public Flag as boolean. ( il sera à False par défaut )
Dans TransfertAMDEC vous mettez au début Flag=False et à la fin Flag=True.
Dans CommandButtonTransfert2 vous testez ce flag en début de macro :
If Flag=False then exit Sub.
et à la fin vous le réinitialiser avec Flag=False.
Vous avez déclaré la variable en Public avant le Sub ?
VB:
Option Explicit
Public Flag As Boolean
Sub TransfertAMDEC()
Flag = False
' macro
Flag = True
End Sub
Sub CommandButtonTransfert2()
If Flag = False Then Exit Sub
' Si on arrive ici Flag=True
' macro
Flag = False
End Sub
Bonjour.
Essayez If Not Flag Then Exit Sub dans la seconde procédure.
Ce n'est pas très orthodoxe d'utiliser des opérateurs arithmétiques ou relationnels dans une expression ne comportant que des termes Boolean.
Bonjour
Le demi-corse que je suis prévaudrait sur le demi-espagnol que je suis également et --->> se contenterait de faire varier la propriété" visible (bien mieux que enabled) du bouton CommandButtonTransfert2
- false au départ
- true à l'issue de la première macro
- false à à fin de la sub évènementielle de CommandButtonTransfert2
Aucune possibilité ainsi de geste à ne pas faire