1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
|
'(COLLER DANS UN MODULE VBA .bas, jusqu'à la version MSOFFICE 2003)
Otion Explicit
Public Function ListerRep(CheminRepertoire As String) As Variant
Dim Temp_TableauDynamique() As Variant
Dim x, d, i As Integer
With Application.FileSearch
.LookIn = CheminRepertoire
.fileName = "*.txt"
'Initialise la première case à 0
'NbFoundFiles
ReDim Temp_TableauDynamique(1)
Temp_TableauDynamique(0) = 0
If .Execute > 0 Then
MsgBox "There were " & .FoundFiles.Count & _
" file(s) found with the extension " & .fileName
x = .FoundFiles.Count
'Debug.Print "Nombre de fichiers: " & x
'Redimensionne le tableau
ReDim Temp_TableauDynamique(0 To x)
'InfoNbFilesInThisArray
Temp_TableauDynamique(0) = x
'Remplissage du tableau avec le nom des fichiers txt
For d = 1 To x
Temp_TableauDynamique(d) = CStr(.FoundFiles(d))
'Debug.Print Temp_TableauDynamique(d)
Next d
Else
MsgBox "There were no files found."
End If
End With
ListerRep = Temp_TableauDynamique
End Function
Sub TesterListerRep()
Dim InfoUtilisateur As Variant
Dim Elem1 As Variant
Dim k As Integer
Elem1 = ListerRep("C:\")
'Debug.Print "NbDeFichiersRetournés: " & Elem1(0)
If Elem1(0) > 0 Then
For k = 1 To Elem1(0)
InfoUtilisateur = MsgBox("FichierTrouvé: " & Elem1(k), vbInformation, "LISTE DES FICHIERS")
Next
End If
End Sub |
Partager