m_k
Messages postés11Date d'inscriptionsamedi 17 juillet 2004StatutMembreDernière intervention13 octobre 2005
-
9 oct. 2005 à 01:33
m_k
Messages postés11Date d'inscriptionsamedi 17 juillet 2004StatutMembreDernière intervention13 octobre 2005
-
10 oct. 2005 à 01:11
Bonjour,
je souhaiterai à l'ouverture de mon fichier excel ajouter automatiquement un bouton dans ma barre d'outils, lorsque je clique sur ce dernier j'exécute ma macro et à la fermeture mon bouton est retirer
Chouchensb
Messages postés64Date d'inscriptionjeudi 3 mars 2005StatutMembreDernière intervention 2 septembre 2010 9 oct. 2005 à 10:27
Salut,
J'ai fait quelque chose de similairen dans une macro: j'ai crée une barre d'outil qui se charge lors de l'installation de ma macro. Peut-être que mon code pourra t'aider ?
J'utilise les instructions suivantes:
'Pour crée une barre d'outil
Application.CommandBars.Add(Name:="Nom de la barre d'outil").Visible = True
With Application.CommandBars(:="Nom de la barre d'outil")
.Controls.Add(Type:=msoControlButton).Caption = "Nom du bouton 1"
.Controls.Add(Type:=msoControlButton).Caption = "Nom du bouton 2"
.........
End With
'Pour faire les set-up des boutons de la barre d'outil (icone, macro, aspect)
Dim Button_modification As Variant
Set Button_modification = Application.CommandBars("Nom de la barre d'outil").Controls("Nom du bouton 1")
With Button_modification
.FaceId = 271 'définit l'icone
.TooltipText = "Aide du bouton 1"
.OnAction = "Nom de la macro associée au bouton 1"
.Style = msoButtonIconAndCaption 'définit le type de bouton
End With
Set Button_modification = Application.CommandBars("Nom de la barre d'outil").Controls("Nom du bouton 2")
With Button_modification
.FaceId = 271
.TooltipText = "Aide du bouton 2"
.OnAction = "Nom de la macro associée au bouton 2"
.Style = msoButtonIconAndCaption
End With
....
'Pour effacer la barre d'outil
Application.CommandBars("Nom de la barre d'outil").Delete
'Petit programme pour afficher les icones disponibles sous excel
Sub Icones_display()
Dim i, j As Integer
Dim Button As Variant
For i = 1 To 2
Application.CommandBars.Add(Name:="Icones" & CStr(i)).Visible = True
For j = ((i - 1) * 500 + 1) To (i * 500)
Set Button = Application.CommandBars("Icones" & CStr(i)).Controls.Add(Type:=msoControlButton)
With Button
.Caption = Str(j)
.FaceId = j
End With
Next j
Next i
End Sub