Compter le nombre de classeurs Excel dans un dossier

  • Initiateur de la discussion Initiateur de la discussion Philippe
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Philippe

XLDnaute Occasionnel
Bonjour le forum,

J'ai besoin de pouvoir compter dans un dossier, nommé ici "MONDOSSIER", le nombre de classeurs ".xls"; le dossier en question contient d'aures types de fichiers (.doc, .jpg, etc...). J'ai donc écrit ce petit code.... qui ne fonctionne pas... d'où ma demande d'aide de votre part


Sub recherche()
Dim dossier As Folder
Dim fiche As File
dossier.Name = "C:\MONDOSSIER\"
For Each fiche In dossier
If Right(fiche.Name, 4) = ".xls" Then x = x + 1
Next
[A1] = "Il y a " & x & "classeurs Excel dans ce dossier"
End Sub

Merci d'avance pour vos idées
PS: J'ai activé Scripting Runtime dans mon projet sans être vraiment certain que ce soit nécessaire ici...

A+
Philippe
 
Re : Compter le nombre de classeurs Excel dans un dossier

bonjour
En admettant que le fichier soit dans le même répertoire que celui à tester
si non, modifier this workbook.path &"\" par le chemin qui va bien
Sub recherche()
n = Dir(ThisWorkbook.Path & "\", 0)
While n <> ""
n = Dir()
If LCase(Right(n, 3)) = LCase("xls") Then
x = x + 1
End If
Wend
MsgBox x
End Sub
 
Re : Compter le nombre de classeurs Excel dans un dossier

Bonsoir Philippe, Sousou

une autre solution :

Code:
Sub CompterXls()

Dim fs As FileSearch
Dim MonRepertoire As String
Set fs = Application.FileSearch
fs.NewSearch
MonRepertoire = "C:\MONDOSSIER\"
With fs
    .LookIn = MonRepertoire
    .Filename = "*.xls"
    If .Execute > 0 Then msgbox  .FoundFiles.Count
End With
End Sub

bonne soirée
@+

Edition : enlevé les codes liés a la reference Microsoft scripting Runtime, c'était une partie d'une macro que j'utilise.
 
Dernière édition:
Re : Compter le nombre de classeurs Excel dans un dossier

Bonjour Philippe, sousou

Un autre exemple :

Code:
Sub Cptfichier()

Dim chemin As String
chemin = "C:\MONDOSSIER"
Range("A1") = ""
Set fs = Application.FileSearch
With fs
     .LookIn = chemin
     .Filename = "*.xls"
       If .Execute > 0 Then
           Range("A1") = "Il y a : " & .FoundFiles.Count & " Fichier(s) Excel dans le dossier :   " & chemin
       Else
           Range("A1") = "Aucun fichier Excel dans ce dossier :   " & chemin
       End If
End With

End Sub

Bonne soirée

Bonsoir Pierrot
 
Dernière édition:
Re : Compter le nombre de classeurs Excel dans un dossier

Merci beaucoup les amis,

je découvre dans vos codes des intructions que je ne connaissais pas...
On en a toujours des tonnes à apprendre

Bonne soirée à tous et à bientôt

Philippe
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

K
Réponses
4
Affichages
1 K
Kojiro59
K
Retour