j'ai un souci en vba
je veux masquer les barres d'outils de menus et autres à l'exception de la barre standard.
j 'arrive tres bien a le faire.
mais le probleme est que quand j'ouvre un autre classeur excel, la modification est faite aussi pour ce nouveau classeur ouvert.
comment masquer les barre pour juste classeur precis et eviter que cela ne se repercute sur les autres classeurs.
ce que j'avais trouver comme solution c'était de creer une fonction qui masque toute les barres a l'ouverture du fichier
et a la fermeture remet en place toutes les barres.
mais je ne resoud toujours pas le probleme qui est de masquer toute les barre pour un classeur donné et non pour les autres classeurs ouverts au même moments.
ce que j'avais trouver comme solution c'était de creer une fonction qui masque toute les barres a l'ouverture du fichier
et a la fermeture remet en place toutes les barres.
mais je ne resoud toujours pas le probleme qui est de masquer toute les barre pour un classeur donné et non pour les autres classeurs ouverts au même moments.
Je pense que tu vas te retrouver bloquer à ce niveau dans la mesure ou tu masques les barres de l'application, dès lors que tu ouvres un autre fichier tu ne changes pas d'application mais juste de fenêtre. Il est possible de faire disparaitre le problème (au lieu de le résoudre) en ouvrant tes autres fichiers dans une autre instance d'excel (relancer l'application une seconde fois).
Mais j'en convient, cela ne constitue pas une réponse au problème exposé
Cdt
GB
c'est possible, mais pas forcément conseillé
il suffit que ton code VBA plante à un moment pour que les barres ne réapparaissent pas, par exemple... mais bon
Le principe est d'utiliser les évènements Workbook_Activate et Deactivate
si tu as une procédure MasqueBarres et une autre AfficheBarres que tu utilisais à l'ouverture et à la fermeture du classeur, il faut ajouter ce code dans ThisWorkbook
Code:
Private Sub Workbook_Activate()
Call MasqueBarres
End Sub
Private Sub Workbook_Deactivate()
Call AfficheBarres
End Sub