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
 

patricktoulon

XLDnaute Barbatruc
Ben ton code on va l'intégrer dans ton module
on va peut être un peu la remanier vu quelle sera piloté mais ca me parait bien parti

une chose
le bouton nouveau(plus tard dans le ruban )
il faut prévoir dès ce moment
la création du dossier projet dans le quel on va enregistrer le csv
et si un dossier général projet doit être créé
 

RyuAutodidacte

XLDnaute Impliqué
Corr : ajout de radioButton :
VB:
Public Sub Class_Initialize()
    Set GetParentElem = New Collection
 
    GetParentElem.Add "  ", "customUI"
    GetParentElem.Add " customUI ", "ribbon"
    GetParentElem.Add " ribbon ", "tabs"
    GetParentElem.Add " tabs ", "tab"
    GetParentElem.Add " tab ", "group"
    GetParentElem.Add " group ", "box"
    GetParentElem.Add " group ", "buttonGroup"
    GetParentElem.Add " group box menu splitButton ", "menu"
    GetParentElem.Add " group ", "dynamicMenu"
    GetParentElem.Add " group box buttonGroup dropDown menu ", "button"
    GetParentElem.Add " group box buttongroup ", "splitButton"
    GetParentElem.Add " group box ", "checkBox"
    GetParentElem.Add " group box ", "radioButton"
    GetParentElem.Add " group ", "comboBox"
    GetParentElem.Add " group ", "dropDown"
    GetParentElem.Add " group ", "gallery"
    GetParentElem.Add " gallery comboBox dropDown ", "item"
    GetParentElem.Add " group ", "labelControl"
    GetParentElem.Add " group ", "separator"
    GetParentElem.Add " menu ", "menuSeparator"

End Sub
 

RyuAutodidacte

XLDnaute Impliqué
1720384332619.png

1720384521701.png
 

RyuAutodidacte

XLDnaute Impliqué
GetOpenFilname Simple by RyuAutodidacte
VB:
Sub ChoixDeFichiers() 'RyuAutodidacte 08/02/17 - GetOpenFilename à ma sauce pour Mac
    If Application.OperatingSystem Like "*Macintosh*" Then
        On Error Resume Next
        MainPath = MacScript("POSIX path of (choose file with prompt  ""Sélectionner un ou plusieurs fichiers:"" of type {""xls"",""pdf"",""xlsm"", ""csv""} with multiple selections allowed)")
        'Pour la partie => {""xls"",""pdf"",""xlsm""} mettre les extensions voulues, entourées de doubles guillemets et séparées par une virgule
        'Si on veut tous les fichiers mettre alors la double accolade comme suit => {}
        'Si on veut ne sélectionner qu'un fichier alors retirer => with multiple selections allowed
        If Err.Number > 0 Then MsgBox "Sélection annulée": Exit Sub
        On Error GoTo 0
        Paths = Split(Replace(MainPath, "alias ", ""), ", ") 'on récupère le tout dans un tableau de base 0 que l'on peut alors traiter
        For i = LBound(Paths) To UBound(Paths)
            Debug.Print Paths(i)
        Next
    Else
        MsgBox "Mettre le code PC ici"
    End If
End Sub
 

Statistiques des forums

Discussions
315 116
Messages
2 116 408
Membres
112 742
dernier inscrit
julien.sch