Les barres d'outils

Excel 5

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.

Excel 7

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.

Excel 97

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

Stockage des barres d'outils

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

Attache d'une barre d'outils personnalisée à un classeur

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 :

  1. Créer un fichier vide qu'on appelle "FichierRibouldingue"
  2. Créer un fichier vide qu'on appelle "FichierRaplapla"
    Rester dans FichierRaplapla
  3. Créer une nouvelle barre d'outils appelée "BarreCacatoès"
    Dès ce moment, la barre d'outils est alors disponible pour tous les classeurs. Elle n'est pas du tout assignée à un fichier quelconque
  4. Aller dans Affichage/Barres d'outils/Personnaliser, Onglet Barres d'outils, Bouton Attacher
  5. Cliquer dans la liste de gauche sur "BarreCacatoès", et cliquer sur "Copier".
    Cette barre d'outils sera alors copiée dans le classeur actif, à savoir "FichierRaplaPla"
    Dès ce moment, la barre personnalisée est doublement existante :
    a. Dans "NomUtilisateur.8.XLB" (pour tous les classeurs)
    b. Localement dans "FichierRaplapla.XLS"

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"

  1. Placer le focus sur Raplapla.XLS
  2. Affichage/Barres d'outils/Personnaliser, Onglet Barres d'outils, Cliquer sur Attacher
  3. Dans la liste de droite, sélectionner BarreCacatoès, et cliquer sur Supprimer
  4. ATTENTION : à ce stade, la barre d'outils est toujours visible, et si on ne fait pas également ensuite Affichage/Barres d'outils/Personnaliser, Cliquer sur "BarreCacatoès", et "Supprimer", alors, "BarreCacatoès" restera implantée dans NomUtilisateur.8.XLB. Il faut donc faire cette 2ème opération pour en être définitivement débarassé