VBA Alimenter listbox avec fichier d'un dossier selon conditions
Résolu
Pirate12
-
Pirate12 -
Pirate12 -
Bonjour à tous,
Je me lance dans un projet plutot audacieux.. en tout cas pour quelqu'un avec mon niveau en VBA.
Mon idée de base:
Un dossier regroupe plusieurs fichiers à traiter (ce dossier accueillera de nouveau fichier avec le temps).
Via un tableau excel j'aimerais indiquer les fichiers "traité". Pour cela j'aimerais ouvrir une listbox qui affiche les fichiers du dossier.
Ce que j'obtiens avec le code:
J'aurais besoin que la listbox n'affiche que les fichiers non-traité.. mon idée est de rentrer le nom du fichier en colonne B du tableau par exemple.
J'aurais donc besoin d'introduire dans le code, si le nom du fichier est trouvé dans la colonne B ne pas l'afficher.
J'espère avoir été assez clair et surtout vous remercie d'avance pour votre temps.
Cordialement.
Je me lance dans un projet plutot audacieux.. en tout cas pour quelqu'un avec mon niveau en VBA.
Mon idée de base:
Un dossier regroupe plusieurs fichiers à traiter (ce dossier accueillera de nouveau fichier avec le temps).
Via un tableau excel j'aimerais indiquer les fichiers "traité". Pour cela j'aimerais ouvrir une listbox qui affiche les fichiers du dossier.
Ce que j'obtiens avec le code:
Private Sub UserForm_Initialize() repertoire = "C:\Users\Desktop\blabla" nf = Dir(repertoire & "*.*") ' premier fichier Do While nf <> "" Me.ListBox1.AddItem nf nf = Dir ' fichier suivant Loop End Sub
J'aurais besoin que la listbox n'affiche que les fichiers non-traité.. mon idée est de rentrer le nom du fichier en colonne B du tableau par exemple.
J'aurais donc besoin d'introduire dans le code, si le nom du fichier est trouvé dans la colonne B ne pas l'afficher.
J'espère avoir été assez clair et surtout vous remercie d'avance pour votre temps.
Cordialement.
A voir également:
- VBA Alimenter listbox avec fichier d'un dossier selon conditions
- Fichier bin - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fichier rar - Guide
- Dossier appdata - Guide
1 réponse
Bonjour,
Private Sub UserForm_Initialize() Dim Plage As Range, derlig As Long, Vnf As Long, nf As Variant repertoire = "C:\Users\Desktop\blabla\" nf = Dir(repertoire & "*.*") ' premier fichier With Worksheets("feuil1") 'nom de feuille a adapter derlig = .Range("B" & .Rows.Count).End(xlUp).Row 'derniere cellule non vide Set Plage = .Range("B1:B" & derlig) ' definition Plage de cellules fichiers a traiter End With Do While nf <> "" Vnf = Application.CountIf(Plage, nf) 'Fichier est au mois une fois dans liste If Vnf > 0 Then Me.ListBox1.AddItem nf End If nf = Dir ' fichier suivant Loop End Sub
J'ai juste modifié,
ça correspond mieux à mon besoin j'avais surement pas été assez claire.
Mais ça fonctionne tip top un grand merci !