Lister fichier dans un combobox du ruban

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 !

greguVB

XLDnaute Nouveau
[RESOLU] Lister fichier dans un combobox du ruban

Bonjour à tous,

J'ai un soucis, j'aimerai lister un répertoire bien défini dans un combobox intégrer à un groupe de control DANS mon ruban, je me suis servi de ce fil de discution cependant je planche pour récuperer les noms des fichiers, c'est à dire à ce niveau :
Code:
Sub ComboLabel(control As IRibbonControl, index As Integer, ByRef returnedVal)
ChDir "C:\Users\gregu\Documents\XLS"
path2 = Dir("*.*", 16)
While path2 <> ""
returnedVal = path2
path2 = Dir
Wend
End Sub

Quand je fais en pas à pas, la valeur de 'returnedval' change bien et m'indique à chaque boucle un nom de fichier different, mais une fois la procedure finie, je n'ai que le nom du fichier le plus recent (autant de fois qu'il y a d'item dans le repertoire..evidemment -_-)

si quelqu'un pouvait me venir en aide svp, ou me donner un petit indice, je chercherais

Merci d'avance !
 
Dernière édition:
Re : Lister fichier dans un combobox du ruban

bonjour


tu peux tester cette adaptation :


Dans le fichier xml de personnalisation :

Code:
<customUI xmlns="" onLoad="RubanCharge"
>
<ribbon startFromScratch="false">
<tabs>
<tab id="OngletPerso" label="OngletPerso" visible="true">
   <group id="Projet01" label="Projet 01">
      <!-- getItemCount="NbItemCombo" va définir le nombre d'items dans la combobox. --> 
      <!-- getItemLabel="ComboLabel" permet d'alimenter la combobox. -->
      <!-- onChange="ChangeCombo1" gère l'évènement 'Change' dans la combobox. -->
      <comboBox id="Combo1" label="Choix : " getItemCount="NbItemCombo" getItemLabel="ComboLabel"
         onChange="ChangeCombo1" />
   </group>
</tab>
</tabs>
</ribbon>
</customUI>




Dans le module objet ThisWorkbook du classeur :

Code:
Option Explicit

Private Sub Workbook_Open()
    Dim Chemin As String, Fichier As String
    Dim i As Integer
    
    'Définit le répertoire contenant les fichiers
    Chemin = "C:\Documents and Settings\mimi\dossier\"
    
    'Boucle sur tous les fichiers du répertoire.
    Fichier = Dir(Chemin & "*.*")
    
    Do While Len(Fichier) > 0
        i = i + 1
        'écrit le résultat dans le tableau.
        ReDim Preserve Tableau(1 To i)
        Tableau(i) = Fichier
        Fichier = Dir()
    Loop
End Sub



Dans un module standard du classeur :

Code:
Option Explicit
 
Public MonRuban As IRibbonUI
Public Tableau() As String

'Callback for customUI.onLoad
'Est déclenché lors du chargement du ruban personnalisé.
Sub RubanCharge(ribbon As IRibbonUI)
    Set MonRuban = ribbon
End Sub
 
 
'Callback for Combo1 getItemCount
Sub NbItemCombo(control As IRibbonControl, ByRef returnedVal)
    'Définit le nombre d'éléments dans la combobox
    returnedVal = UBound(Tableau)
End Sub
 
 
'Callback for Combo1 getItemLabel
Sub ComboLabel(control As IRibbonControl, index As Integer, ByRef returnedVal)
    'Alimente le Combobox à partir des données du tableau
     returnedVal = Tableau(index + 1)
End Sub
 
 
'Callback for Combo1 onChange
Sub ChangeCombo1(control As IRibbonControl, text As String)
    'Renvoie l'élément sélectionné dans la combobox
    MsgBox text
End Sub



bonne soirée
michel
Microsoft Excel MVP
 
- 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

Retour