Masquer frame dans userform si pas dans la feuille "xxx"

Bonjour,

Je viens vers vous car je n'ai pas réussi à trouver sur la toile (ainsi qu'ici) un exemple de ma recherche.

J'essaie de vouloir masquer une frame (qui contient des boutons) dans un userform quand l'utilisateur est sur la mauvaise feuille "

Exemple :

Frame1.Visible = True if Activeworksheets is "Planning" else Frame1.Visible = False end if

J'ai réussi à la masquer une fois mais dès que je vais sur une autre feuille elle reste visible :/

Je vous joint le fichier, dans l'userform "MenuGlobal" onglet "Page4", il y a une frame "FrameEquipe" je voudrais qu'elle soit visible seulement sur la feuille "PLANNING SEMAINE AS"

Merci d'avance pour l'aide apportée que je puisse comprendre comment ça fonctionne pour pouvoir l'adapter à d'autre objet.

24agentnewv.zip (199.76 Ko)

Bonsoir,

votre ligne de code "est à l'envers" non ?
if Activesheet.name="Planning" then Frame1.Visible = True else Frame1.Visible = False
à la place de :
Frame1.Visible = True if Activeworksheets is "Planning" else Frame1.Visible = False end if

@ bientôt

LouReeD

Oups oui bien sûr mais la question qui me bloque c'est où mettre le code réellement pour que ce soit actualisé car si je change de feuille avec ce code, pas de réactualisation.

J'avais bien mis dans Userform_Initialize la condition .Visible = "False" , mais dès que je change de page la frame reste active dans l'userform... :/

Ok, désolé, je n'avait pas regardé le fichier...
Fichier joint :

trois ajouts : les deux premiers juste avant la ligne de code d'affichage du USF "global", le troisième dans le module de classeur "thisworkbook" dans la procédure événementielle "activate" :
Lorsqu'une feuille est activée, le code est lancé, on teste le nom de la feuille activée, puis on rend visible ou pas la frame, et on "repaint" le USF.

Une gestion d'erreur est en place afin d'éviter un message d'erreur si le USF n'est pas "activé".

N'ayant pas compris votre fichier, je vous laisse le soin de tester ces ajouts.

@ bientôt

LouReeD

Merci beaucoup LooReeD.

Ca fonctionne nickel. Oui le fichier est un peu désordonné pour le moment. Plus qu'à regarder où instancier, où réactualiser.

Merci du temps pris pour m'aider. :)

Merci @ vous pour les remerciements !

@ bientôt

LouReeD

Après la bataille, mais tant pis. Bonjour tout le monde.

J'avais suivi exactement la même démarche avec une petite variante. Plutôt que de laisser l'onglet "Page4" s'ouvrir sur du vide (frame caché), j'ai choisi de cacher carrément l'onglet 4 qui ne doit pas servir.

20agentnewv.zip (171.95 Ko)

Merci optimix :)

La frame était un prétexte au fonctionnement des objets :)

C'est plus la façon de faire que j'ai besoin de comprendre pour l'adapter. Merci de ta participation !

Rechercher des sujets similaires à "masquer frame userform pas feuille xxx"