Vba récupérer commandbars

sifusalade Messages postés 142 Statut Membre -  
sifusalade Messages postés 142 Statut Membre -
Bonjour,

Je voudrais récupérer les commandars à l'ouverture (barres affichées, positions etc) pour les remplacer par d'autres.

À la fermeture du fichier, mes nouvelles commandars se supprime pour remettre comme c'était avant.

Comment puis-je m'y prendre svp ?

Je suis sous excel 2003.
En vous remerciant

4 réponses

Frenchie83 Messages postés 2254 Statut Membre 339
 
bonjour

voici 2 macros, l'une pour créer une nouvelle barre d'outils et en y incorporant les éléments de ton choix, la deuxième pour la supprimer quand tu quittes ton fichier
Sub AfficherBoiteOutils()
    Toolbars.Add Name:="Barre d'outils 1"
    With Toolbars("Barre d'outils 1")
        .Visible = True
        .Position = xlTop
        .Left = 390
        .Top = 1
    End With
    Toolbars("Barre d'outils 1").ToolbarButtons.Add Button:=19, Before:=1
    Toolbars("Barre d'outils 1").ToolbarButtons.Add Button:=21, Before:=1
    Toolbars("Barre d'outils 1").ToolbarButtons.Add Button:=128, Before:=1
    Toolbars("Barre d'outils 1").ToolbarButtons.Add Button:=210, Before:=1
End Sub

Sub SupprimerBoiteOutils()
    Toolbars("Barre d'outils 1").Delete
End Sub


dans cet exemple, je ne rajoute qu'une barre d'outils, mais rien empêche dans rajouter d'autres. dans la barre d'outils j'y ajoute des boutons, ils sont numéroter par excel. la difficulté est de connaître leurs numéros respectifs. Le plus simple est de le faire une fois manuellement tout en enregistrant une macro, puis de récupérer les numéros trouvés.

cdlt
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Bonjour,

Pour connaitre le numéro (id) des boutons pour office2003 ou office 2007 (excel, access, powerpoint, outlook....)

télécharger à partir de l'URL (anglophone)
http://www.microsoft.com/en-us/download/details.aspx?id=3582
0
Frenchie83 Messages postés 2254 Statut Membre 339
 
Bonjour et merci pour l'info

bien cordialement
0
sifusalade
 
Bonjour,

Merci pour ces infos. J'ai oublié de préciser quelque chose d'important. Ce fichier sera partagé. Le but est donc que ça ne dérègle leur paramètres que pour ce fichier. À la sélection d'autre fichier et à la fermeture excel se remet comme avant.

C'est pour cela que j'ai besoin de les récupérer à l'ouverture. Car chacun dispose son excel 2003 comme il l'entends.

En vous remerciant.
0
Frenchie83 Messages postés 2254 Statut Membre 339
 
Re bonjour

Normalement, il n'y a pas de problème, puisque c'est ce fichier qui crée la barre d'outils et c'est le même fichier qui la supprime quand on le ferme. Toutefois, peut-être l'a tu déjà fais, mais il faut renommer les macros:
la première la nommer Sub Auto_Open
et l'autre Sub Auto_close

De plus, j'ai rajouter , dans chaque macro une ligne de sortie dans le cas ou l'on aurait supprimé volontairement la barre d'outils avant la fermeture, ou bien, si l'on tentait d' ouvrir le fichier alors qu'il serait déjà ouvert. dans les 2 cas on sort du programme.

Je t'invite à faire plusieurs manip au cas où j'aurai oublié quelque chose

Sub Auto_open()
    On Error GoTo sortie
    Toolbars.Add Name:="Barre d'outils 1"
    With Toolbars("Barre d'outils 1")
        .Visible = True
        .Position = xlTop
        .Left = 390
        .Top = 1
    End With
    Toolbars("Barre d'outils 1").ToolbarButtons.Add Button:=19, Before:=1
    Toolbars("Barre d'outils 1").ToolbarButtons.Add Button:=21, Before:=1
    Toolbars("Barre d'outils 1").ToolbarButtons.Add Button:=128, Before:=1
    Toolbars("Barre d'outils 1").ToolbarButtons.Add Button:=210, Before:=1
sortie:
End Sub

Sub Auto_close()
    On Error GoTo sortie
    Toolbars("Barre d'outils 1").Delete
    
sortie:
End Sub


cordialement
0
sifusalade Messages postés 142 Statut Membre 7
 
Bonjour,

mes profondes excuses pour cette réponse très tardive.

Cela marche sous un excel 2003. Certains de mes collègues sont passés sous un pack Office 2010...

Avant de faire le test sous 2010, vous savez si cela va fonctionner ? J'ai de très gros doutes car 2010 ne semble pas architecturé de la même manière...
0