Bonjour Forum,
Beug ou pas ?
Dans une application que je créé actuellement, je constate le fait suivant :
- J'ai 2 contrôles qui sont :
* TextBox1
* CommandButton1 (Qui ferme la UserForm1)
- J'ai 2 Private Sub qui sont :
* Une Private Sub TextBox1_Exit
* Une Private Sub UserForm1_QueryClose
Alors que TextBox1 a la focus, je clique sur CommandButton1 pour fermer la UserForm1.
Je pensais, à tort à priori, que l'ordre d'exécution des Private Sub allait être le suivant : D'abord TextBox1_Exit, puis UserForm1_QueryClose.
En fait, c'est l'inverse qui se produit : VBA exécute d'abord 'QueryClose' puis 'TextBox1_Exit'.
C'est pour moi un non sens car les instructions que j'avais positionné dans 'TextBox_Exit' sont primordiales et doivent valider préalablement des données que la PrivateSub 'QueryClose' enregistre ensuite sur une feuille excel.
Dans ce cas de figure, il résulte donc que QueryClose a enregistré des données fausses puisqu'elles n'ont pas été 'corrigées' par les intructions de TextBox_Exit.
Auriez-vous déjà constaté ceci ?
Si oui, auriez-vous une 'parade' permettant d'éviter cette priorité bien génante ?
Merci d'avance pour votre aide.