vendredi 6 janvier 2017

Compter le nombre de fichiers dans un répertoire avec une (ou des) extensions passées en paramètres

Dans un module en VBA, copier/coller le code suivant :

Sub AfficheTotalFichiers()
    Debug.Print  NombreFichiers("C:\Mes Documents\", "docx", "xlsx")
End Sub


'Fonction qui compte le nombre de fichiers dans un répertoire
Function NombreFichiers(Chemin As String, ParamArray LesExtensions() As Variant) As Long
    Dim Fichier As String
    Dim Extension As Variant
    Dim Compteur As Long
 
    For Each Extension In LesExtensions
        Fichier = Dir(Chemin & "*." & Extension)
            Do Until Fichier = ""
            Compteur = Compteur + 1
            Fichier = Dir
        Loop
    Next
 
    NombreFichiers = Compteur
End Function