bonjour a tous


je cherche le moyen d'eviter les fichier protégés(vista ou seven) lorsque je boucle sur un disque pour chercher un fichier

voici la macro qui me cherche dans un dossier ca va mais des que je change le chemin avec la letre du disque je tombe a coup sur sur les fichiers cachés

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
'Lister les fichiers d'un répertoire et ses sous-répertoires - une méthode + rapide ?
 
 
 
 
Option Explicit
Public nb As Integer
 
Sub Appel()
Dim chemin As String
    nb = 0
    chemin = "F:\PATRICK"     ' ici si je met que le disque(chemin = "F:") 
    Lister chemin
End Sub
 
 
 
 
Public Function Lister(chemin As String)
Dim fs, Rep As Variant, NewRep As String, Nomfich As String
    Set fs = CreateObject("Scripting.FileSystemObject")
    Lister = fs.GetFolder(chemin).Files.Count
    Nomfich = Dir(chemin & "\*.*")
    Do While Nomfich <> "" 'si je n'est que le disque comme chemin je vais tombé sur les fichiers protégés
        nb = nb + 1
        If Nomfich = "toto.xls" Then Workbooks.Open chemin & "\" & Nomfich
 
        'Cells(nb, 1) = chemin & "\" & Nomfich 'liste dans la feuille de calculs active
        Nomfich = Dir()
    Loop
    'Pour chaque sous-répertoire, appel récursif de Lister
    For Each Rep In fs.GetFolder(chemin).SubFolders
        NewRep = Lister(Rep.Path)
    Next Rep
End Function

quelqu'un aurait une solution ou un lien


merci d'avance


au plaisir