Liste déroulante de fichiers (.txt) dans USF

Re-Bonjour

Je me permet de vous écrire à nouveau car, j'aimerais savoir si il est possible de créer une liste déroulante (qui contiendrais des nom de fichier se situant dans un répertoire qu'on aurai renseigné (le répertoire) au préalable).

L'idée serait que cette liste déroulante se situe dans une USF, dans mon cas à la place du champ de texte "référence de l'OF"..

interfacegraphique

Est-ce possible? Si oui, pouvez-vous me mettre sur la piste ? (fonction à utiliser, astuces...)

Merci d'avance

Dieu bénisse ce forum

Bonjour Iliasse, bonjour le forum,

Ce petit bout de code devrait te mettre sur la voie...

Private Sub UserForm_Initialize()
Dim CH As String 'déclare la variable CH (CHemin d'accès)
Dim F As String 'déclare la varialbe F (Fichier)

CH = "C:\Users\Iliasse\Documents" 'définit le chemin CH (à adapter à ton cas)
F = Dir(CH & "\*.xls") 'définit la variable F (premier fichier Excel du dossier du chemin)
Do While F <> "" 'exécute tant qu'il existe des fichiers
    Me.ComboBox1.AddItem (F) 'ajoute le fichier à la ComboBox1
    F = Dir 'redéfinit la variable F (fichier suivant)
Loop 'boucle
End Sub

Merci beaucoup !!

Dieu bénisse le forum

Bonjour,

J'ai adapté ton code à mon programme mais je suis confronté à un petit problème.

Quoi que je sélectionne comme optionbutton j'ai quand même mes fichier des deux répertoire, j'aurais aimé n'avoir que les fichier de mon répertoire L1 lorsque je sélectionne optionbutton correspondant.

Je pense avoir trouvé le problème, peut être qu'il enregistre la variable qui correspond aux noms de mes fichiers dans la liste déroulantes, et que lorsque qu'on change de répertoire il retrouve quand même des noms de fichiers qui ne sont pas dans le répertoire choisi. Confirmes-tu? Y-a-t-il un moyen pour qu'il n'enregistre pas les variable (les noms de fichiers) dans la liste déroulante ?

Le code est joint au message.

PLEASE!!!

Private Sub ComboBox1_Change()

    Dim CH As String 'déclare la variable CH (CHemin d'accès)
    Dim F As String 'déclare la varialbe F (Fichier)
    If OFamonterL1 = True Then
        CH = "T:\ISh\Projet PREP\Prg\IS\L1" 'définit le chemin CH
        F = Dir(CH & "\*.txt") 'définit la variable F (premier fichier txt du dossier du chemin)
        Do While F <> "" 'exécute tant qu'il existe des fichiers
           Me.ComboBox1.AddItem (F) 'ajoute le fichier à la ComboBox1
           F = Dir 'redéfinit la variable F (fichier suivant)
        Loop 'boucle
    Else: OFaMonterL2 = True
         CH = "T:\ISh\Projet PREP\Prg\IS\L2" 'définit le chemin CH
        F = Dir(CH & "\*.txt") 'définit la variable F (premier fichier txt du dossier du chemin)
        Do While F <> "" 'exécute tant qu'il existe des fichiers
           Me.ComboBox1.AddItem (F) 'ajoute le fichier à la ComboBox1
           F = Dir 'redéfinit la variable F (fichier suivant)
        Loop 'boucle
    End If

End Sub

Bonjour Iliasse, bonjour le forum,

L'erreur se situe au niverau du Else.

If Condition
Code1
Else : Code2
Code3
End If

Si la condition est [Vrai] le Code1 est lu ainsi que le Code3

si la condition est [Faux] le Code2 est lu ainsi que le Code3

Il aurait fallu écrire :

If Condition
code 1
Else
Code 2
End If
Code3

ou

If Condition1 Then Code1
If Condition2 Then Code2
Code3

Ton code modifié et simplifié :

Private Sub ComboBox1_Change()
Dim CH As String 'déclare la variable CH (CHemin d'accès)
Dim F As String 'déclare la varialbe F (Fichier)

If OFamonterL1 = True Then CH = "T:\ISh\Projet PREP\Prg\IS\L1" 'définit le chemin CH
If OFaMonterL2 = True Then CH = "T:\ISh\Projet PREP\Prg\IS\L2" 'définit le chemin CH
F = Dir(CH & "\*.txt") 'définit la variable F (premier fichier txt du dossier du chemin)
Do While F <> "" 'exécute tant qu'il existe des fichiers
    Me.ComboBox1.AddItem (F) 'ajoute le fichier à la ComboBox1
    F = Dir 'redéfinit la variable F (fichier suivant)
Loop 'boucle
End Sub
Rechercher des sujets similaires à "liste deroulante fichiers txt usf"