|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Administrateur de base de données Inscription : mai 2011 Messages : 99 ![]() |
Bonjour Forum,
J'ai un projet qui contient une multitude de userform, j'aimerais que lorsque l'événement Workbook_Deactivate est lancé, les userform visible se HIDE et l'orsque l'événement Workbook_Activate est lancé ces même userform réaparaisse. Merci d'avance! |
|
|
00
|
|
|
#2 | ||||||
|
Expert Confirmé Sénior
![]() ![]() |
Salut
Humm, il existe plusieurs solutions, mais dans le principe, il faut que tu saches au moment de ré-afficher tes UserForm lesquels doivent être affichés. Donc tu peux par exemple placer dans un module autant de variable boolean que de UserForm (un exemple avec 3 Userform) Code Module Code :
Code :
Code :
++ Qwaz
__________________
MagicQwaz := Harry Potter la baguette en moins ![]() Le monde dans lequel on vit HammerFest Ma page perso DVP - Dernier Tutoriel : VBA & Internet Explorer |
||||||
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Administrateur de base de données Inscription : mai 2011 Messages : 99 ![]() |
Oui j'avais pensé à cette option mais mon problème, c'est que si je teste un userform qui n'est pas loader, excel le load par défaut. Comment contourner ce problème?
|
|
|
00
|
|
|
#4 |
|
Expert Confirmé Sénior
![]() ![]() |
Salut
Il ne faut pas confondre Loadé et Visible. Peut importe que la Form soit chargé en mémoire ou pas, c'est toi qui décide de l'afficher ou non, tu n'as pas à t'occuper de son état de chargement. Si ce concept te pose problème explique les soucis qu'il génère. ++ Qwaz
__________________
MagicQwaz := Harry Potter la baguette en moins ![]() Le monde dans lequel on vit HammerFest Ma page perso DVP - Dernier Tutoriel : VBA & Internet Explorer |
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() Administrateur de base de données Inscription : mai 2011 Messages : 99 ![]() |
COmment on fait alors pour lui dire de ne pas la charger, car si le userform n'est pas loader, lorsqu'il test s'il est visible ou non, il ne reconnait pas la variable et donc il lance l'initialisation de ma userform.
Merci! |
|
|
00
|
|
|
#6 |
|
Expert Confirmé Sénior
![]() ![]() |
Salut
Ca n'a pas d'importance, encore une fois, le fait de charger la feuille ne change rien, celle-ci ne sera affichée que si tu en fais la demande express via UserForm.show. Si ça n'est pas déjà fait, essai le code que je t'ai proposé au dessus. ++ Qwaz
__________________
MagicQwaz := Harry Potter la baguette en moins ![]() Le monde dans lequel on vit HammerFest Ma page perso DVP - Dernier Tutoriel : VBA & Internet Explorer |
|
|
00
|
|
|
#7 |
|
Nouveau Membre du Club
![]() Administrateur de base de données Inscription : mai 2011 Messages : 99 ![]() |
OK je crois que j'ai trouvé un façon, j'utilise le principe avec tes variables,
Mais au lieu de tester s'ils sont visible ou non, je met la variable = true quand mon userform est activé et lorsqu'il se désactive ou se hide, je remet la variable à False. Ça fonctionne bien merci! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com