barre personnalisée

  • Initiateur de la discussion Initiateur de la discussion joums
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

joums

XLDnaute Occasionnel
Bonjour à tous,
je souhaite créer une barre personnalisée avec des boutons et images

Question 1:
Le code ci-dessous marche sous excel 2003 et + mais pas sous excel 2000 pourquoi ?

Code:
  Dim CmdBar As CommandBar
 
    Dim Bouton As CommandBarButton
     Dim picImage1 As IPictureDisp
 Set picImage1 = LoadPicture("F:\image1.gif")

 'Création de la barre d'outils nommée 'MaBarrePerso'
    Set CmdBar = Application.CommandBars _
        .Add(Name:="MaBarre", Position:=msoBarTop, Temporary:=True)
    
    'Ajout de X boutons dans la barre d'outils
    Set Bouton1 = CmdBar.Controls.Add(Type:=msoControlButton)
    With Bouton1
        'Définit "l'image" qui va s'afficher sur le bouton
            .Picture = picImage1 'c'est ici que ca bug
        

        'Définit quelle macro est associée au bouton.
        'Cette macro sera lancée à chaque fois que vous cliquez sur le bouton.
        .OnAction = "Macro1"
    End With
 CmdBar.Visible = True
End Sub
Question 2 :
Est-il possible d'agrandir l'image du bouton qui est par défaut 16 x 16

Merci de votre aide
 
Re : barre personnalisée

Bonjour,
Essaies peut-être ceci
Code:
Sub Macro1()
Dim CmdBar As CommandBar
Dim Bouton As CommandBarButton
Dim Img As Object
'Création de la barre d'outils nommée 'MaBarrePerso'
Set CmdBar = Application.CommandBars _
.Add(Name:="MaBarre", Position:=msoBarTop, Temporary:=True)
'Ajout de X boutons dans la barre d'outils
Set bouton1 = CmdBar.Controls.Add(Type:=msoControlButton)
Set Img = ActiveSheet.Pictures.Insert("F:\image1.gif")
Img.Copy
With bouton1
    .PasteFace
    .OnAction = "Macro1"
End With
Img.Delete
CmdBar.Visible = True
End Sub
A+
kjin
 
Re : barre personnalisée

Merci pour ton aide,

effectivement cela marche, je connaissais cette méthode mais ce qui me soucis c'est que l'image est copiée dans un 1er temps dans la feuille, et on la voit apparaitre ce que je ne souhaite pas.

Le code pourtant marche sous excel 2003 ?
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
1 K
Réponses
6
Affichages
1 K
Réponses
2
Affichages
2 K
Retour