Microsoft 365 Création d'un nouvel onglet du ruban en vba et y attacher 4 macros complémentaires (MAC et PC)

RyuAutodidacte

XLDnaute Impliqué
Bonjour,

j'ai beau chercher partout mais je ne trouve de solution pour le moment …

Comme l'onglet "Acceuil" qui existe dans le ruban, je cherche à pourvoir créer par vba un nouvel onglet "TOTO" et y insérer 4 macros, provenant d'un complément Excel d'un fichier xlam déjà insérer par macro :
VB:
Sub Add_AddIn() 'version Mac (peut être PC aussi pouvez vous confirmer SVP)
Dim addInPath As String
    addInPath = "MonChemin/TEST.xlam"
    AddIns.Add addInPath
    AddIns("TEST").Installed = True '
End Sub
Le but est de pourvoir faire une automatisation d'installation sur plusieurs utilisateurs Mac et PC

merci d'avance pour vos réponses

Ryu
 

RyuAutodidacte

XLDnaute Impliqué
allez un dernier pour aujourd'hui

le menu en cascade
XML:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<customUI azerty="http://schemas.microsoft.com/office/2009/07/customui">
    <ribbon startFromScratch="false">
        <tabs>
            <tab visible="true" id="tab0" label="onglet0">
                <group id="group_1" label="exemple menu en cascade">
                    <menu id="menu-0" label="menuX_0">
                        <button id="button_0" label="item menu 1" onAction="item_menu_1_click" imageMso="ActiveXImage"/>
                        <button id="button_1" label="item menu 2" onAction="item_menu_2_click" imageMso="ObjectBringToFront"/>
                        <button id="button_2" label="item menu 3" onAction="item_menu_3_click" imageMso="ObjectBringForward"/>
                        <menu id="menu-1" label="sub menu 1" imageMso="ObjectBorderOutlineColorMoreColorsDialog">
                            <button id="button_3" label="item 1" onAction="item_1_click" imageMso="ObjectFormatDialog"/>
                            <menu id="menu-2" label="sub  menu  2" imageMso="ObjectBorderOutlineColorMoreColorsDialog">
                                <button id="button_6" label="sub  sub item1" onAction="sub__sub_item1_click" imageMso="MacroSecurity"/>
                                <button id="button_7" label="sub sub otem 2" onAction="sub_sub_otem_2_click" imageMso="MacroRecord"/>
                                <menu id="menu_3" label="sous menu " imageMso="ObjectBorderOutlineColorMoreColorsDialog">
                                    <button id="button_8" label="sous item 1" onAction="sous_item_1_click" imageMso="Paste"/>
                                    <button id="button_9" label="sous item 2" onAction="sous_item_2_click" imageMso="QueryParameters"/>
                                    <button id="button_10" label="sous item 3" onAction="sous_item_3_click" imageMso="SelectCurrentRegion"/>
                                </menu>
                            </menu>
                            <button id="button_4" label="item 2" onAction="item_2_click" imageMso="SendCopySelectNames"/>
                            <button id="button_5" label="item 3" onAction="item_3_click" imageMso="WatchWindow"/>
                        </menu>
                    </menu>
                </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>

va y Bil compile
🤣
un nouveau piège ??? car avec ce xml ca bug ...
 

patricktoulon

XLDnaute Barbatruc
souviens toi du "xxmlns" c'est peut être autre chose
diabolo.gif
 

patricktoulon

XLDnaute Barbatruc
oui l'ordre dans l'interface ,tu metl'ordre que tu veux en fait
quand tu veux un bouton tu clique sur le bouton violet des button
tu veux un menu tu clique sur le violet de menu
etc...etc...
tiens un dernier pour la route
juste pour te montrer un menu quasi identique sauf que l'un est fait avec un splitbutton et l'autre un menu tout court
XML:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
    <ribbon startFromScratch="false">
        <tabs>
            <tab id="tab-1" label="Onglet_0">
                <group id="group-0" label="premiergroup">
                    <splitButton id="splitButton_1">
                        <menu id="menu_1" itemSize="large">
                            <button id="button_1" onAction="button_1_Click" imageMso="MacroPlay" label="mon bouton1"/>
                            <button id="button_2" onAction="button_2_Click" imageMso="MacroRecord" label="mon bouton 2"/>
                            <button id="button_3" onAction="button_3_Click" imageMso="MacroRelativeReferences" label="mon bouton 3"/>
                        </menu>
                    </splitButton>
                    <separator id="separator_1"/>
                    <menu id="menu_2" label="mon bouton1" itemSize="large" imageMso="MacroPlay">
                        <button id="button_4" onAction="button_4_Click" label="mon bouton 1" imageMso="MacroPlay"/>
                        <button id="button_5" onAction="button_5_Click" label="mon bouton 2" imageMso="MacroRecord"/>
                        <button id="button_6" onAction="button_6_Click" label="mon bouton 3" imageMso="MacroRelativeReferences"/>
                    </menu>
                </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>

compile ya pas de piege
 

patricktoulon

XLDnaute Barbatruc
bonjour ryu

allez apres les menus les Gallery simples
ne t’inquiète pas si ca fait pas le callback c'est par ce que dans ta version il n'y avait pas encore les gallery
VB:
a<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
    <ribbon startFromScratch="false">
        <tabs>
            <tab id="tab-1" label="Onglet_0">
                <group id="group_1" label="Gallery 1">
                    <gallery id="gallery_1" onAction="gallery_1_Click" itemHeight="50" columns="3" imageMso="ErrorChecking" size="large" label="gallery 3 colonne" itemWidth="50">
                        <item id="item_1" imageMso="MacroPlay"/>
                        <item id="item_2" imageMso="MacroRecord"/>
                        <item id="item_3" imageMso="MacroRelativeReferences"/>
                        <item id="item_4" imageMso="MacroSecurity"/>
                        <item id="item_5" imageMso="MenuPublish"/>
                        <item id="item_6" imageMso="MoreControlsDialog"/>
                    </gallery>
                </group>
                <group id="group_2" label="Gallery 2">
                    <gallery id="gallery_2" onAction="gallery_2_Click" columns="1" itemHeight="30" itemWidth="50" label="Gallery 1 colonne avec texte">
                        <item id="item_7" label="toto" imageMso="LabelInsert"/>
                        <item id="item_8" label="titi" imageMso="Undo"/>
                        <item id="item_9" label="riri" imageMso="InkColorMoreColorsDialog"/>
                        <item id="item_10" label="fifi" imageMso="Lock"/>
                        <item id="item_11" label="loulou" imageMso="_3DBevelPictureTopGallery"/>
                        <item id="item_12" label="polux" imageMso="_3DEffectColorPickerClassic"/>
                    </gallery>
                </group>
                <group id="group_3" label="galery 3 que du texte">
                    <gallery id="gallery_3" onAction="gallery_3_Click" imageMso="PictureReset" size="large" columns="2">
                        <item id="item_13" label="toto"/>
                        <item id="item_14" label="titi"/>
                        <item id="item_15" label="riri"/>
                        <item id="item_16" label="fifi"/>
                    </gallery>
                </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>
pour info voila ou j'en suis pour mon creator 2023 beta4
demo.gif
 
Dernière édition:

RyuAutodidacte

XLDnaute Impliqué
bonjour ryu

allez apres les menus les Gallery simples
ne t’inquiète pas si ca fait pas le callback c'est par ce que dans ta version il n'y avait pas encore les gallery
VB:
a<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
    <ribbon startFromScratch="false">
        <tabs>
            <tab id="tab-1" label="Onglet_0">
                <group id="group_1" label="Gallery 1">
                    <gallery id="gallery_1" onAction="gallery_1_Click" itemHeight="50" columns="3" imageMso="ErrorChecking" size="large" label="gallery 3 colonne" itemWidth="50">
                        <item id="item_1" imageMso="MacroPlay"/>
                        <item id="item_2" imageMso="MacroRecord"/>
                        <item id="item_3" imageMso="MacroRelativeReferences"/>
                        <item id="item_4" imageMso="MacroSecurity"/>
                        <item id="item_5" imageMso="MenuPublish"/>
                        <item id="item_6" imageMso="MoreControlsDialog"/>
                    </gallery>
                </group>
                <group id="group_2" label="Gallery 2">
                    <gallery id="gallery_2" onAction="gallery_2_Click" columns="1" itemHeight="30" itemWidth="50" label="Gallery 1 colonne avec texte">
                        <item id="item_7" label="toto" imageMso="LabelInsert"/>
                        <item id="item_8" label="titi" imageMso="Undo"/>
                        <item id="item_9" label="riri" imageMso="InkColorMoreColorsDialog"/>
                        <item id="item_10" label="fifi" imageMso="Lock"/>
                        <item id="item_11" label="loulou" imageMso="_3DBevelPictureTopGallery"/>
                        <item id="item_12" label="polux" imageMso="_3DEffectColorPickerClassic"/>
                    </gallery>
                </group>
                <group id="group_3" label="galery 3 que du texte">
                    <gallery id="gallery_3" onAction="gallery_3_Click" imageMso="PictureReset" size="large" columns="2">
                        <item id="item_13" label="toto"/>
                        <item id="item_14" label="titi"/>
                        <item id="item_15" label="riri"/>
                        <item id="item_16" label="fifi"/>
                    </gallery>
                </group>
            </tab>
        </tabs>
    </ribbon>
</customUI>
pour info voila ou j'en suis pour mon creator 2023 beta4
Regarde la pièce jointe 1171991
Hello Patrick ;)
je regarde ça dès que j'ai un moment.

Franchement ton creator 2023 beta4, c'est grave propre, j'ai pas le niveau pour ce type d'outil
je le trouve SUPER
 

RyuAutodidacte

XLDnaute Impliqué
Re après test de mon code résultat …
PS : attention le code xml ne retranscrit pas la réalité mais il est là juste pour tester la formation des groupes et des boutons séparation etc dans le bonne ordre

XML:
<tab id="myTabID_1" OPEN>
    <group id ="myGroupID_1" OPEN>
        <button id="myButtonID_1">
        <button id="myButtonID_2">
        <button id="myButtonID_3">
    </group id ="myGroupID_1" CLOSE>
    <group id ="myGroupID_2" OPEN>
        <box id="myBoxID_1" OPEN>
            <button id="myButtonID_4">
            <separator id="mySeparatorID_1">
            <button id="myButtonID_5">
            <separator id="mySeparatorID_2">
        </box id="myBoxID_1" CLOSE>
    </group id ="myGroupID_2" CLOSE>
    <buttonGroup id="myButtonGroupID_1" OPEN>
        <button id="myButtonID_6">
        <button id="myButtonID_7">
    </buttonGroup id="myButtonGroupID_1" CLOSE>
</tab id="myTabID_1" CLOSE>

et le tout sans multi dimension ;)
 

Statistiques des forums

Discussions
314 017
Messages
2 104 582
Membres
109 083
dernier inscrit
Stef06