Gégé-45550
XLDnaute Accro
Bonjour amis Excel'lents, pouvez-vous m'expliquer ce que j'ai mal fait et que je n'arrive pas à comprendre ?
Je m'explique :
Dans le fichier joint, il y a un bouton sur la Feuil1 qui ouvre un Userform1 en modal.
Dans ce Userform1, il y a deux boutons, un pour quitter et un autre qui ouvre un Userform2 en modal et masque (Hide) le Userform1 tant que Userform2 est ouvert.
Dans le Userform2, il y a un bouton qui permet de fermer le Userform2 en le déchargeant (Unload) et de ré-afficher le Userform1 (Show).
Comme je souhaite que les deux usf aient le même comportement à la fermeture, j'ai mis pour chacun d'eux le même code de sortie dans leur évènement QueryClose.
le problème que je rencontre et sur lequel je m'arrache le peu de cheveux qu'il me reste est le suivant :
Lorsque Userform1 est ouvert et que je clique sur le bouton qui ouvre Userform2, pas de problème, Userform2 s'affiche et Userform1 est masqué.
Lorsque, dans Userform2, je clique sur le bouton qui ferme Userform2 et qui ré-affiche Userform1, pas de problème, Userform2 disparaît et Userform1 est affiché.
Comme disait l'individu qui était en train de tomber du 50e étage en passant devant le 30e : jusque là, tout va bien.
Mais, lorsque, un fois revenu sur Userform1, je clique à nouveau pour afficher Userform2, patatras, plantage, Userform2 est affiché mais bloqué et VBA s'arrête sur la commande "UserForm2.Show" dans le code du bouton de Userform1 qui commande l'affichage de Userform2 (qui pourtant devrait avoir été vidé de la mémoire).
Je sais, j'ai été un peu long mais, au moins je l'espère, suffisamment clair pour décrire un problème qui me laisse perplexe.
Merci à vous, amis Excel'lents, d'avoir eu la patience de me lire jusqu'au bout et à ceux qui voudront bien m'expliquer pourquoi un code si simple a priori ne fait pas ce que j'en attends.
Je m'explique :
Dans le fichier joint, il y a un bouton sur la Feuil1 qui ouvre un Userform1 en modal.
Dans ce Userform1, il y a deux boutons, un pour quitter et un autre qui ouvre un Userform2 en modal et masque (Hide) le Userform1 tant que Userform2 est ouvert.
Dans le Userform2, il y a un bouton qui permet de fermer le Userform2 en le déchargeant (Unload) et de ré-afficher le Userform1 (Show).
Comme je souhaite que les deux usf aient le même comportement à la fermeture, j'ai mis pour chacun d'eux le même code de sortie dans leur évènement QueryClose.
le problème que je rencontre et sur lequel je m'arrache le peu de cheveux qu'il me reste est le suivant :
Lorsque Userform1 est ouvert et que je clique sur le bouton qui ouvre Userform2, pas de problème, Userform2 s'affiche et Userform1 est masqué.
Lorsque, dans Userform2, je clique sur le bouton qui ferme Userform2 et qui ré-affiche Userform1, pas de problème, Userform2 disparaît et Userform1 est affiché.
Comme disait l'individu qui était en train de tomber du 50e étage en passant devant le 30e : jusque là, tout va bien.
Mais, lorsque, un fois revenu sur Userform1, je clique à nouveau pour afficher Userform2, patatras, plantage, Userform2 est affiché mais bloqué et VBA s'arrête sur la commande "UserForm2.Show" dans le code du bouton de Userform1 qui commande l'affichage de Userform2 (qui pourtant devrait avoir été vidé de la mémoire).
Je sais, j'ai été un peu long mais, au moins je l'espère, suffisamment clair pour décrire un problème qui me laisse perplexe.
Merci à vous, amis Excel'lents, d'avoir eu la patience de me lire jusqu'au bout et à ceux qui voudront bien m'expliquer pourquoi un code si simple a priori ne fait pas ce que j'en attends.