Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Ajouter un bouton en haut dans le bandeau excel a cote du ? Apres fenetre

  • Initiateur de la discussion Initiateur de la discussion mcj1997
  • 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 !

Re : Ajouter un bouton en haut dans le bandeau excel a cote du ? Apres fenetre

Bonjour,

Pour les versions d'Excel antérieure à Excel 2007,

Essaie ceci :

VB:
Sub test()
Dim Mbar As CommandBar

With Application.CommandBars("Worksheet Menu Bar").Controls.Add(Type:=msoControlButton)
    .FaceId = 2992
    .OnAction = "mois_moins_un"
    .TooltipText = "M-1"
    .Caption = "BOUTON A DEPLACER A COTE DE ? APRES FENETRE"
    .Style = msoButtonIconAndCaption
End With

End Sub
 
Re : Ajouter un bouton en haut dans le bandeau excel a cote du ? Apres fenetre



Cela ne fonctionnne pas.
 
Re : Ajouter un bouton en haut dans le bandeau excel a cote du ? Apres fenetre

C'est embêtant, car je n'ai que la version Excel 2010 d'installer.
Je ne peux pas vérifier explicitement cette procédure sur Excel 2003.

Tu veux vraiment ajouter un bouton à la barre des menus de la feuille de calcul?
Si tu passes la souris au-dessus de la barre des menus après le point d'interrogation,
est-ce qu'il y a un bouton sans qu'il y ait une icône ou du texte qui se sont ajoutés?

La procédure "Moins_Moins_Un" est dans un module standard?

C'est particulier parce qu'avec ce type de procédure, lorsqu'il y a un problème
cela provoque un message d'erreur...


Essaie comme ceci :

VB:
Sub test()
 Dim Mbar As CommandBar
 
With Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
     .FaceId = 2992
     .OnAction = "mois_moins_un"
     .TooltipText = "M-1"
     .Caption = "Mon_Bouton"
     .Style = msoButtonIconAndCaption
 End With
End Sub
 
Re : Ajouter un bouton en haut dans le bandeau excel a cote du ? Apres fenetre

Cela ne fonctionnne pas.


Si cela fonctionnne il fallait exécuter la macro pour avoir le bouton en haut qui apparait, par contre quelque soit le fichier excel que j'ouvre il apparait, alors que la formule n'est pas VBA PROJECT(xls.perso).
Comment faire en sorte que le bouton n'apparaisse que dans le fichier ou il est enregistré ?

Merci d'avance,
 
Re : Ajouter un bouton en haut dans le bandeau excel a cote du ? Apres fenetre

Place tout le code suivant dans le ThisWorkbook de ton classeur.

La configuration des barres d'outils est conservée dans un fichier
dédié à cette tâche : Excelxx.xlb situé dans ce répertoire sous Windows 7
C:\Users\Ton profil\AppData\Roaming\Microsoft\Excel\

Le xx dans ExcelXX.xlb représente le numéro de ta version d'Excel.

Si tu supprimes ce fichier, toutes les personnalisations des barres d'outils
seront perdues. Lors de l'ouverture suivante, Excel le recrée tel qu'il existait
après l'installation d'Excel. La sauvegarde de la configuration des barres
d'outils se fait à la fermeture d'Excel.


VB:
Private Sub Workbook_Activate()
Dim Mbar As CommandBar
On Error Resume Next
Application.CommandBars(1).Controls("Mon_Bouton").Delete
With Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
      .FaceId = 2992
      .OnAction = "mois_moins_un"
      .TooltipText = "M-1"
      .Caption = "Mon_Bouton"
      .Style = msoButtonIconAndCaption
End With
End Sub
'--------------------------------------
Private Sub Workbook_Deactivate()
On Error Resume Next
Application.CommandBars(1).Controls("Mon_Bouton").Delete
End Sub
'--------------------------------------
Private Sub Workbook_Open()
Dim Mbar As CommandBar
On Error Resume Next
Application.CommandBars(1).Controls("Mon_Bouton").Delete
With Application.CommandBars(1).Controls.Add(Type:=msoControlButton)
      .FaceId = 2992
      .OnAction = "mois_moins_un"
      .TooltipText = "M-1"
      .Caption = "Mon_Bouton"
      .Style = msoButtonIconAndCaption
End With
End Sub
 
Re : Ajouter un bouton en haut dans le bandeau excel a cote du ? Apres fenetre


Merci, est-il possible à ce même endroit de la barre d'outils est possible d'y mettre un bouton qui lorsqu'en cliquant dessus apparaisse une liste avec plusieurs macros ?

Merci d'avance
 
Re : Ajouter un bouton en haut dans le bandeau excel a cote du ? Apres fenetre

Comme ceci :

Place tout le code dans un module standard.
Dans le ThisWorkbook, événement Workbook_Open,
tu appelles la macro : "Bouton_Mes_Macros"

VB:
Sub Bouton_Mes_Macros()
Dim Ctl As CommandBarControl

On Error Resume Next
Application.CommandBars(1).Controls("Mes macros").Delete

With Application.CommandBars(1)
    Set Ctl = .Controls.Add(Type:=msoControlPopup)
End With

With Ctl
    .Caption = "Mes macros"
End With

With Ctl.Controls.Add
    .Caption = "Macro1"
    .Style = msoButtonCaption
    .OnAction = "Bonjour"
    '.FaceId = ???
End With
With Ctl.Controls.Add
    .Caption = "Macro2"
    .Style = msoButtonCaption
    .OnAction = "Bonsoir"
   ' .FaceId = ???
End With
'///Tu peux ajouter autant de contrôle que tu désires
'With Ctrl.Controls.add
    '....
'end with

End Sub
'--------------------------------------
Sub Bonjour()
MsgBox "Bonjour"
End Sub
'--------------------------------------
Sub Bonsoir()
MsgBox "Bonsoir"
End Sub
 
Re : Ajouter un bouton en haut dans le bandeau excel a cote du ? Apres fenetre



Merci, comment faire afin que comme dans le poste #8 ces boutons ne soient que dans le fichier voulu et non dans tous les fichiers excel que l'on ouvrent ?
 
Re : Ajouter un bouton en haut dans le bandeau excel a cote du ? Apres fenetre

Après avoir copié les macros précédentes dans un module standard,
tu ajoutes ceci dans le Thisworkbook de ton fichier.
C'est le même principe que précédemment.

VB:
Private Sub Workbook_Activate()
Call Bouton_Mes_Macros
End Sub
'----------------------
Private Sub Workbook_Deactivate()
On Error Resume Next
Application.CommandBars(1).Controls("Mes macros").Delete
End Sub
'----------------------
Private Sub Workbook_Open()
Bouton_Mes_Macros
End Sub
 
Re : Ajouter un bouton en haut dans le bandeau excel a cote du ? Apres fenetre


merci, une nouvelle question lorsque je change le nom de macro1 ou macro2 sur la ligne caption j'ai toujours en fermant et enregistrant le programme et en rouvrant macro1 ou macro2 qui apparait.
 
Re : Ajouter un bouton en haut dans le bandeau excel a cote du ? Apres fenetre

Le contrôle que tu ajoutes est fait par la macro.
à chaque ouverture du fichier, la macro s'exécute et crée le nouvel élément du menu.

Si tu veux modifier le nom "Macro1" et "Macro2", tu dois le faire dans la macro qui
crée ces commandes. Cela ne sert à rien de vouloir modifier cela par la fenêtre "Personnaliser"
 
- 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

  • Question Question
Microsoft 365 affichage userform
Réponses
4
Affichages
511
Réponses
43
Affichages
598
  • Question Question
Microsoft 365 bouton supprimer
Réponses
4
Affichages
223
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…