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 !
Bonjour à la communauté.
J'ai créé des onglets dans mon ruban avec des icones perso qui appellent des Subs, des UserForm... Personnalisés dans VBA
Ces onglets sont contenu dans un XLSM.
Mon but est d'activer un onglet (ex : "Dossiers") quand je clique sur l'icone "Dossier" de l'onglet "Devis".
Attention, l'onglet "Dossier" a pour id, "Dossier", étonnant, non ?
bonsoir
l'activation d'un onglet ce fait par la fonction activateTab de l'object ruban
il faut que ton ruban soit variabiliser en utilisant le callback onload
si tu ne l'a pas prévu dans ton ruban c'est mort
il te faudra alors jouer de la librairie iaccessible et là c'est pas triste et même bancale
je te suggère de reprendre le xml et d'y mettre le onload a ta balise customUI
et bien sur coder son callback et variabiliser une variable object ruban
pour l'utiliser ou tu veux après "variableruban.activateTab("id de l onglet)"
Tu remarqueras que dans le second groupe je définis getVisible, ce qui te permettra de rendre visible ou non le second groupe, ceci est valable pour la plupart des contrôles.
Ensuite tu gère aux niveau des Callback voici un exemple minimaliste.
Code dans un module exemple "Callbacks"
Voilà bonne programmation.
PS. Patrick fournit un application pour créer des rubans, tu as aussi d'autres applications comme Assistant Ruban
Un peu de lecture ici et puis là.
bonsoir
l'activation d'un onglet ce fait par la fonction activateTab de l'object ruban
il faut que ton ruban soit variabiliser en utilisant le callback onload
si tu ne l'a pas prévu dans ton ruban c'est mort
il te faudra alors jouer de la librairie iaccessible et là c'est pas triste et même bancale
je te suggère de reprendre le xml et d'y mettre le onload a ta balise customUI
et bien sur coder son callback et variabiliser une variable object ruban
pour l'utiliser ou tu veux après "variableruban.activateTab("id de l onglet)"
Merci pour ta deuxième réponce (😉 car je te connais, Ô maitre) Mais j'avais oublié de précisé que j'avais fais les trucs dans "l'ordre". Mon ruban est bien déclaré avec un onLoad.
Encore merci à toi...
Tu remarqueras que dans le second groupe je définis getVisible, ce qui te permettra de rendre visible ou non le second groupe, ceci est valable pour la plupart des contrôles.
Ensuite tu gère aux niveau des Callback voici un exemple minimaliste.
Code dans un module exemple "Callbacks"
Voilà bonne programmation.
PS. Patrick fournit un application pour créer des rubans, tu as aussi d'autres applications comme Assistant Ruban
Un peu de lecture ici et puis là.
Tu remarqueras que dans le second groupe je définis getVisible, ce qui te permettra de rendre visible ou non le second groupe, ceci est valable pour la plupart des contrôles.
Ensuite tu gère aux niveau des Callback voici un exemple minimaliste.
Code dans un module exemple "Callbacks"
Voilà bonne programmation.
PS. Patrick fournit un application pour créer des rubans, tu as aussi d'autres applications comme Assistant Ruban
Un peu de lecture ici et puis là.
Bonsoir, ou bonjour Valtrase (JP ?)
Un super grand merci pour ton aide.
Mais ma question n'était pas dans l'affichage d'une partie du ruban (mais je garde ton code précieusement, extraordinaire) mais dans l'affichage (ou plutot l'activation) d'un autre onglet du ruban.
C'est très vrai Patrick, mais Office RibbonX Editor ne fait presque rien(une petite mise en forme et un petit controle de validité), mais il laisse la main sur tout.
J'attend juste que "CreatorRibbonX ImageMso evolution V6" passe à la version 7, et là, les 5 étoiles sont promises...
Mais je l'ai déjà dis, "CreatorRibbonX" est une merveille, mais si on fouille, ça devient complex, même pour les pro !
Et "vulgariser" ce language est déjà un chalenge hors norme, donc CréatorRibbonX est un exploit, je me répète...
Mais je conseil à tous les novices qui veulent s'attaquer au ruban d'utiliser ton "CreatorRibbonX", c'est un fait, il est une super passerelle.
Et non, je ne l'ai pas volée... 😉 Bien à toi Patrick. (rien que pour ça, c'est une étoile en plus 😉, mais comment le faire ?)
Et un super grand merci pour toutes les choses que tu fais pour nous, les novices curieux...
Denis.
si tu l'avais fait avec creatorRibbonX tu n'aurais même pas posé la question
bon je te l'accorde il ne fait pas les images intégrées mais pour n'importe quel personne un peu au courant facile de l’éditer même dans un blocnot ton xml
l'avantage c'est a chaque création je le rappelle dans le module des callback
et j'offre même le safe ribbon ce que ORE ne fait pas bien entendu
voila un exemple de code vba dans un classeur ayant un ruban creatorRibbonX
regarde bien les commentaires
j'assiste plus là je tiens la main 😉
le creator de harkam de DVP est bien aussi a condition de ne pas avoir de problème avec le control treeview
mais lui ne compile pas le fichier ou ne l'integre pas dans une fichier xl il fait juste le xml et les callback
Mais ma question n'était pas dans l'affichage d'une partie du ruban (mais je garde ton code précieusement, extraordinaire) mais dans l'affichage (ou plutot l'activation) d'un autre onglet du ruban.
Si j'ai bien compris cette fois-ci, tu dois utiliser comme Patrick te l'a indiquer l'IdMso de l'onglet.
Si j'ajoute un bouton sur le ruban qui devra afficher l'onglet Accueil voici le code à changer.
VB:
'@Description "Callback for Button-Click."
Public Sub OnActionButton(Control As IRibbonControl)
Select Case Control.ID
Case "button1"
mVisible = True
UIRibbon.InvalidateControl ("grp1")
Case "button2"
mVisible = False
UIRibbon.InvalidateControl ("grp1")
Case "button3"
' // Activation de l'onglet "Accueil"
UIRibbon.ActivateTabMso ("TabHome")
Case "button4"
MsgBox "Vous avez sélectionné le bouton " & Control.ID
Case Else
Debug.Print "Case """; Control.ID; """" '; vbTab; " "; Control.Tag; """"
End Select
End Sub
Bonjour à tout les deux
du coup je me suis un peu amusé moi aussi
voilà comment on travaille avec creatorRibbonX
le dossier de projet avec le xml de base créé avec creatorRibbonX et le sample.xlsm final
et là tes switch sont sécurisés
Bonjour a tout les deux @DenisHen
j'ai téléchargé ton fichier
j'ai repris ton xml et tes images et refait avec le creatorRibbonX AllImages
voila ce que ça donne
j'ai ai profité pour ajouter le saferibbon
fonctionnel a partir de 2010 à 2024
maintenant tu pourra faire de l'activate (Tab) ou (TabMso)
patrick
zip le fichier et va voir les xml comme c'est propre 😉 et pas que le customUI
les référence aux images sont leur noms original dans les relationships
- 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