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

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é
un nouveau piège ??? car avec ce xml ca bug ...
 

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
 
Dernière édition:

RyuAutodidacte

XLDnaute Impliqué
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
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…