des dossiers dans une combobox...

babap1

XLDnaute Occasionnel
Bonjour le forum,

je n'arrive pas à trouver d'infos qui répondraient à mes questions..
En PJointe, j'ai un exemple de ce que je veux faire avec 2 UForm :

  • AddForm contient une combobox qui liste des fichiers Xml
  • EquiType contient une combobox qui est censé lister des nom de dossier.

Voila mon problème, grace au forum j'arrive bien à lister des fichiers qui sont dans un dossier de mon DDur mais je n'arrive pas à lister le nom des dossiers qui sont dans.. un dossier de mon DDur !

Code:
Dim EquiType As String  'Equipment type
    
    'Thanks to http://www.excel-downloads.com/forum/ for that code
    Path = ActiveCell.Value
    EquiType = Dir("D:\Documents and Settings\Xml\*")
    
    Do While EquiType <> ""
        If EquiType <> ThisWorkbook.Name Then Cbx_EquiType.AddItem EquiType
        EquiType = Dir
    Loop

Est-ce que je pourrai avoir vos lumières sur le sujet ? :)
Merci d'avance,

Bap
 

Pièces jointes

  • Test_v2.db.zip
    22.9 KB · Affichages: 18

babap1

XLDnaute Occasionnel
Re : des dossiers dans une combobox...

Bonjour gilbert_RGI,

merci pour ta réponse mais ce n'est pas ce que je voulais faire.. en effet, dans les combobox tu listes ce qu'il y a dans ma liste (colonne A) alors que je voulais lister le nom de tous les dossiers présents dans C:\ par exemple...
 

babap1

XLDnaute Occasionnel
Re : des dossiers dans une combobox...

Bravo et merci gilbert_RGI, c'est exactement ce que je voulais ! ;)

J'aimerai juste découper une chaine de caractère et je n'y arrive pas.
C'est à dire que j'aimerai réccupérer uiquement le dernier dossier :

folder = "C:\Program Files\SNEC Tool\Input files\Database SNEC\Xml"
folderXml = Right(folder , InStr(len(folder), folder , "\"))

-> pour avoir folderXml = Xml
 
Dernière édition:

gilbert_RGI

XLDnaute Barbatruc
Re : des dossiers dans une combobox...

Bonjour l'arrivant

remplacer dans le module
le code
Code:
    EquiType.ComboBox1.AddItem folderItem.Path



par le code suivant

Code:
EquiType.ComboBox1.AddItem Right(folderItem.Path, Len(folderItem.Path) - Len(nRep))
 
Dernière édition:

babap1

XLDnaute Occasionnel
[Resolu] des dossiers dans une combobox...

Bonjour gilbert_RGI, Pierre-Jean, le forum

merci pour votre coup de main. J'ai mixé vos idées et j'ai pondu quelque chose qui me va :

Code:
Private Sub UserForm_Initialize()
    Dim fs As Object
    Dim MonRep As Object
    Dim ColRep As Object
    Dim nRep, folderItem, XmlFolder
    Set fs = CreateObject("Scripting.FileSystemObject")
    
    Me.Cbx_EquiType = Range("B2").Value
    
    'Folder test
    x = Split(ActiveWorkbook.Path, "\")
    nRep = x(UBound(x))
    
    If (nRep = "Excel") Then
        Set MonRep = fs.GetFolder("..\Xml\")
        Set ColRep = MonRep.SubFolders
        
        For Each folderItem In ColRep
            y = Split(folderItem, "\")
            EquiTypeFolder = y(UBound(y))
            If (EquiTypeFolder <> "lib") Then Me.Cbx_EquiType.AddItem EquiTypeFolder
        Next
        
        'Initilalize
        Set ColRep = Nothing
        Set MonRep = Nothing
        Set fs = Nothing
    End If
End Sub

maintenant j'essaye juste de faire un reload de ma combobox mais j'ai posté ça dans un autre sujet...

Merci pour votre aide,
Cordialement.

Bap
 

Discussions similaires

Réponses
19
Affichages
2 K

Statistiques des forums

Discussions
312 584
Messages
2 089 982
Membres
104 325
dernier inscrit
Jujuleader