OVH Cloud OVH Cloud

Personnaliser les boutons de commande barre d'outils -> ajout imag

2 réponses
Avatar
JM à Paris
La liste des images que l'on peut associer aux boutons de commandes est assez
restreinte (42 boutons mais très moches, qui vont du Smiley au coeur).
Est-il possible d'ajouter de nouvelles images (sans utiliser la fonction
"Editeur de bouton").
NB : ces boutons servent à executer des macros.

merci de votre aide
jm

2 réponses

Avatar
michdenis
Bonjour JM,

Si tu parles d'un bouton issu de la boîte d'outils "contrôle", affiche les propriétés de ce dernier, il y a la propriété Picture que
tu peux renseigner ... un clic sur le bout de la ligne et affichage de l'arborescence des fichiers et tu sélectionnes le fichier
image désiré.


Si c'est un bouton de commande d'un barre d'outils

En supposant que ton image a pour nom "image 1" et est situé
dans la "Feuil1" de ton classeur :

'--------------------------------
Sub ImageSurBouton_BarreOutils()

Dim Mbar As CommandBar

On Error Resume Next
Set Mbar = Application.CommandBars.Add("MaBar")
Mbar.Visible = True

With ThisWorkbook
With Worksheets("Feuil1")
With .Shapes("Image 1")
.Copy
End With
End With
End With

With Mbar.Controls.Add(msoControlButton)
.Caption = "LanceMacro1"
'Affiche Icône et Texte
.Style = msoButtonIconAndCaption
'Colle l'image du presse-papier
.PasteFace
'Macro associé au bouton
.OnAction = "LaMacro"
End With

End Sub
'--------------------------------



Salutations!


"JM à Paris" a écrit dans le message de news:

La liste des images que l'on peut associer aux boutons de commandes est assez
restreinte (42 boutons mais très moches, qui vont du Smiley au coeur).
Est-il possible d'ajouter de nouvelles images (sans utiliser la fonction
"Editeur de bouton").
NB : ces boutons servent à executer des macros.

merci de votre aide
jm
Avatar
ChrisV
Bonjour JM,

Voici une macro qui te permettra de récupérer le numéro "d'index" de
centaines d'autres images disponibles que tu pourras associer aux boutons de
ta BO personnalisée...

Sub listeFacesID()
Dim i As Integer, j As Integer, k As Integer
Dim cbCtl As CommandBarControl, cbBar As CommandBar
On Error Resume Next
Application.ScreenUpdating = False
Set cbBar = CommandBars.Add(Position:=msoBarFloating, _
MenuBar:úlse, temporary:=True)
Set cbCtl = cbBar.Controls.Add(Type:=msoControlButton, _
temporary:=True)
k = 1
Do
For j = 1 To 10
i = i + 1
Application.StatusBar = "FaceID=" & CStr(i)
cbCtl.FaceId = i
cbCtl.CopyFace
If Err.Number <> 0 Then Exit For
ActiveSheet.Paste Cells(k, j + 1)
Cells(k, j).Value = i
Next j
k = k + 1
Loop While Err.Number = 0
Application.StatusBar = False
cbBar.Delete
Set cbBar = Nothing
Set cbCtl = Nothing
End Sub


ChrisV


"JM à Paris" a écrit dans le message de
news:
La liste des images que l'on peut associer aux boutons de commandes est
assez
restreinte (42 boutons mais très moches, qui vont du Smiley au coeur).
Est-il possible d'ajouter de nouvelles images (sans utiliser la fonction
"Editeur de bouton").
NB : ces boutons servent à executer des macros.

merci de votre aide
jm