bonjour,
une proposition de macro à adapter
prévoir une feuille sur laquelle on introduit le nom du répertoire racine (ex: d:\documents\rapport\) en B1 et en B2 la liste des numéros de répertoire à sélectionner (séparés par une virgule ou un - pour les intervalles, ex : 10,20,30-100 pour sélectionner les répertoires 10,20 et de 30 à 100)
liste des fichiers sur la même feuille
Sub aargh()
Dim tabdossier(1 To 2000)
With Sheets("feuil1") '<- à adapter nom de la feuille sur laquelle chercher l'info
dossierracine = .Range("B1")
textsousdossier = .Range("B2")
textsousdossier = Split(textsousdossier, ",")
k = 3
' on remplit un tableau avec tous les répertoires se trouvant sous le répertoire racine
nd = Dir(dossierracine, vbDirectory)
Do While nd <> ""
ctrd = ctrd + 1
tabdossier(ctrd) = dossierracine & nd
nd = Dir()
Loop
'on sélectionne les répertoires qui correspondent aux numéros
For i = LBound(textsousdossier) To UBound(textsousdossier)
If InStr(textsousdossier(i), "-") > 0 Then
dossier = Split(textsousdossier(i), "-")
d1 = dossier(0)
d2 = dossier(1)
Else
d1 = textsousdossier(i)
d2 = d1
End If
For j = d1 To d2
For d = 1 To ctrd
rep = tabdossier(d)
If rep Like "*" & j & "*" Then
nf = Dir(rep & "\LUOP_VGH_A*") ' on vérifie si le fichier contenant ces caractères est présent dans ce répertoire
If nf <> "" Then
k = k + 1
.Cells(k, 1) = rep & "\" & nf ' on affiche le chemin complet du fichier
Exit For
End If
End If
Next d
Next j
Next i
End With
End Sub