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

Personnaliser ruban en fonction des feuilles

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 !

thomasly@neuf.fr

XLDnaute Nouveau
Bonsoir,


Je début en ruban et j'arrive à créer un onglet avec les commandes qui exécutent les macros correspondants.
Mais les boutons de commandes doivent varier en fonction des feuilles.

Peut-on modifier les boutons en fonction de la feuille active ?
Si oui, merci d'avance de vos réponses.
 
Re : Personnaliser ruban en fonction des feuilles

Bonjour MJ13


Ci-joint le code de création du ruban.

<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui">
<ribbon startFromScratch="false">
<tabs>
<tab id="customTab" label="TEST_RUBAN" insertBeforeMso="TabHome">
<group id="customGroup1" label="Saisie">
<button id="Ajouter" label="Ajouter" imageMso="QueryAppend" size="large" onAction="Ajouter" />
<button id="Supprimer" label="Supprimer" imageMso="RecordsDeleteRecord" size="large" onAction="Supprimer" />
<button id="Imprimer" label="Imprimer" imageMso="PrintAreaMenu" size="large" onAction="Imprimer" />
<button id="Fermer" label="fermer" imageMso="RecurrenceEdit" size="large" onAction="Fermer" />
</group>
</tab>
</tabs>
</ribbon>
</customUI>



Mon but est que quand je suis sur la feuil1, j'ai les 4 boutons.
Mais quand je change de feuille, je n'aurai plus que le bouton " Imprimer " et "Fermer" uniquement.


J'epère avoir bien exprimé le problème.

Merci de vos aides.
 
Re : Personnaliser ruban en fonction des feuilles

bonsoir,

Hello MJ🙂

@Thomas: voir fichier joint. y compris le module ThisWorkBook

A+

[Edition] il faut inverser la condition dans la macro GetEnabledButtons qui devient:
Code:
Sub GetEnabledButtons(control As IRibbonControl, ByRef Enabled)
     If control.ID = "Ajouter" Or control.ID = "Supprimer" Then
            Enabled = ActiveSheet.Name = "Feuil1"
    End If
End Sub
 
Dernière modification par un modérateur:
Re : Personnaliser ruban en fonction des feuilles

Re, Bonjour Hasco

Merci Hasco 🙂.

En tout cas sur Xl2007 😕, je ne vois rien (je vois les macros, mais pas l'onglet dans le ruban), je testerai demain sur XL2013 🙂.

Mais cela devient compliqué de programmer Excel 😱.
 
Re : Personnaliser ruban en fonction des feuilles

Re,

he oui MJ, j'ai mis une déclaration pour 2010 et oublié 2007 (gnark!!!). Je réparerai demain.


A+

[Edit] déclaration pour 2007 effectuée dans le fichier joint et celui du post#7
 
Dernière modification par un modérateur:
- 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
5
Affichages
241
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…