Les barres d'outils sont stockées dans un fichier appelé Excel5.XLB, qui est dans c:\Windows. Si on supprimer ce fichier Excel ouvrire alors les 2 barres d'outils Standard et Format, et le recréera dès qu'on apporte une modification aux barres d'outils. Si on crée un fichier Excel5.XLB dans le répertoire XLOUVRIR, c'est ce fichier qui servira de modèle aux barres d'outils.
Il est possible d'attacher une barre d'outils personnalisée à un modèle.
Pour ce faire, il faut d'abord créer un modèle Aller dans un onglet VBA, ou en créer un s'il n'en existe pas Faire OUTILS/ATTACHER UNE BARRE D'OUTILS Cela a pour effet de copier la barre d'outils dans le modèle présent. Ensuite, on peut fermer le modèle, et dans un autre classeur, normal, on peut supprimer la barre d'outils perssonnalisée. La barre d'outils n'est plus accessible jusqu'au moment ou on demande un nouveau classeur basé sur le modèle qui contient la barre d'outils, parce que dès ce moment, la barre d'outils redevient disponible tout le temps, même si on ferme Excel et qu'on le rouvre sur un classeur normal. Je n'ai pas trouvé comment on empeche une barre d'outils personnalisée de redevenir disponible sans arret.
Dans Excel 97, toute barre d'outil est créée (j'imagine) dans Class.XLT. On ne peut pas comme dans Word, attacher une barre d'outil à un modèle particulier ou une feuille de calcul aussi facilement. afin d'attacher une barre d'outils a un modèle ou une feuille de calcul, il faut :
1. Créer une barre d'outils personnalisée
Cette barre est alors disponible dans tout nouveau document Excel. Admettons qu'on ne la veuille que pour un certain document.
2. Créer un nouveau document, qui devra contenir la barre d'outils
Faire Affichage/Barres d'outils/Personnalisé. Cliquer sur Attacher
3. Choisir dans la liste de gauche la barre d'outils personnalisée à intégrer dans le classeur actif (celui que l'on vient d'ouvrir)
4. Cliquer sur Copier
On constate qu'on n'a pas d'option Supprimer dans la liste de gauche (qui contient les barres d'outils globales dans un fichier Excel Système dont j'ignore le nom)
5. Tout fermer, et appeler le nouveau fichier qui contient la barre personnalisée : Test.XLS
6. Aller dans Affichage/Barres d'outils, et supprimer la barre d'outils nouvellement créée
7. Cette nouvelle barre d'outils ne sera plus disponible avant qu'on ne rouvre le fichier Test.XLS, et c'est là ou il y a un bug : Quand on l'a ouvert, d'accord, la barre apparaît. Mais a présent, quand on ferme Test.XLS, la barre reste toujours disponible, et il faut de nouveau la supprimer manuellement. En fait, d'après mes tests, le simple fait d'ouvrir le fichier qui contient la barre personnalisée la copie dans un fichier système, et le sauvegarde sans avertissement. C'est pourquoi cette barre revient inlassablement
La seule parade que j'ai trouvé est d'insérer le code suivant pour supprimer toutes les barres d'outils personnalisées :
On Error Resume Next
Dim Barre As CommandBar
For Each Barre In Application.CommandBars
Barre.Delete
Next
OU
Application.CommandBars("NomBarrePerso").Delete
Lorsqu'on change (ajout, suppression, modification) les barres de menus et d'outils, les changements se reflètent en fait dans un fichier qui s'appelle
C:\Windows\NomUtilisateur.8.XLB
(Dans mon cas C:\Windows\Michel D.8.XLB)
Explication de l'extension : eXceLBar
Si on détruit ou on renomme ce fichier, alors, excel en recrée un dès son prochain démarrage, avec la configuration d'usine (on a alors perdu nos personnalisations)
Si on détruit à nouveau ce fichier pour remettre l'ancien (qui contient alors les personnalisations), on retrouve justement ces personnalisations.
Moralité : On peut avoir ainsi plusieurs fichiers XLB de configuration, mais celui qui sera utilisé sera celui qui contient le Nom de l'utilisateur courant.8.XLB. Dans le cas ou plusieurs personnes utilisent le même PC, chacune d'entre elles aura donc son propre fichier de configuration .XLB
Il est possible de concevoir une barre d'outils qui ne sera non pas disponibles dans tous les classeurs, mais seulement dans un classeur particulier.
Marche à suivre :
Dès cet instant, il est possible de la supprimer soit de "NomUtilisateur.8.XLB", ou de "FichierRaplapla.XLS"
Pour la supprimer globalement de "NomUtilisateur.8.XLB" :
Affichage/Barres d'outils/Personnaliser, Cliquer sur "BarreCacatoès", et "Supprimer"
ATTENTION : Lors de cette opération, la barre d'outils disparaît complètement, et même lorsque c'est "Raplapla.XLS" qui est actif, elle ne peut apparaître. Pour la récupérer, il faut fermer "Raplapla.XLS", et le rouvrir.
ATTENTION : Quand on fait cette opération, la barre d'outils reste alors visible, même lorsqu'on rend la fenêtre "Ribouldingue.XLS" active
Pour la supprimer de "FichierRaplapla.XLS"