Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Recherche de fichier dans arborescence

5 réponses
Avatar
Sylvain
Bonjour le forum,

Je souhaite rechercher si un fichier (dont je connais le nom) se trouve dans
une arborescence de fichiers.
Je m'explique :
J'ai un dossier avec plusieurs sous dossiers qui eux-mêmes ont plusieurs
sous-dossier :
- Tests
- Produits 1
- Année 1
- Année 2
- Année 3
- Produits 2
- Année 1
- Année 2
- Année 3
- Produits 3
- Année 1
- Année 2
- Année 3

Existe-il une solution pour rechercher, à partir d'un nom de fichier, si un
document avec ce nom existe dans l'un des dossiers de l'arborescence ? Je ne
recherche pas spécialement à savoir où le fichier est archivé mais seulemnt
s'il existe.

Merci pour votre aide

5 réponses

Avatar
Daniel
Bonjour.
Essaie :

With Application.FileSearch
.Filename = "toto.xls"
.LookIn = "c:dossierprincipal"
.SearchSubFolders = True
.Execute
For i = 1 To .FoundFiles.Count
MsgBox .FoundFiles(i)
Next i
End With

Cordialement.
Daniel
"Sylvain" a écrit dans le message de
news:
Bonjour le forum,

Je souhaite rechercher si un fichier (dont je connais le nom) se trouve
dans
une arborescence de fichiers.
Je m'explique :
J'ai un dossier avec plusieurs sous dossiers qui eux-mêmes ont plusieurs
sous-dossier :
- Tests
- Produits 1
- Année 1
- Année 2
- Année 3
- Produits 2
- Année 1
- Année 2
- Année 3
- Produits 3
- Année 1
- Année 2
- Année 3

Existe-il une solution pour rechercher, à partir d'un nom de fichier, si
un
document avec ce nom existe dans l'un des dossiers de l'arborescence ? Je
ne
recherche pas spécialement à savoir où le fichier est archivé mais
seulemnt
s'il existe.

Merci pour votre aide


Avatar
Michel Gaboly
Bonsoir,

Il faut utiliser FileSearch (FileFind avec les versions Mac) :

Private Function FichierTrouve(Nom$) As Boolean
Dim Chemin$, NbCar As Integer, i As Integer
Chemin = ThisWorkbook.Path
NbCar = Len(Nom)
With Application.FileSearch
.LookIn = Chemin
.SearchSubFolders = True
If .Execute > 0 Then
For i = 1 To .FoundFiles.Count
If Right(.FoundFiles(i), NbCar) = Nom Then
FichierTrouve = True
Exit Function
End If
Next i
End If
End With
End Function

Private Sub Test()
MsgBox FichierTrouve("Année 1.xls")
Avatar
Michel Gaboly
Bonsoir,

Excuse-moi, ta réponse m'avait échappé.

Bonjour.
Essaie :

With Application.FileSearch
.Filename = "toto.xls"
.LookIn = "c:dossierprincipal"
.SearchSubFolders = True
.Execute
For i = 1 To .FoundFiles.Count
MsgBox .FoundFiles(i)
Next i
End With

Cordialement.
Daniel
"Sylvain" a écrit dans le message de
news:
Bonjour le forum,

Je souhaite rechercher si un fichier (dont je connais le nom) se trouv e
dans
une arborescence de fichiers.
Je m'explique :
J'ai un dossier avec plusieurs sous dossiers qui eux-mêmes ont plusi eurs
sous-dossier :
- Tests
- Produits 1
- Année 1
- Année 2
- Année 3
- Produits 2
- Année 1
- Année 2
- Année 3
- Produits 3
- Année 1
- Année 2
- Année 3

Existe-il une solution pour rechercher, à partir d'un nom de fichier , si
un
document avec ce nom existe dans l'un des dossiers de l'arborescence ? Je
ne
recherche pas spécialement à savoir où le fichier est archivé mais
seulemnt
s'il existe.

Merci pour votre aide






--
Cordialement,

Michel Gaboly
www.gaboly.com


Avatar
Sylvain
Super ce système, je ne connaissais pas la fonction !
Merci pouir votre aide ;-)
Avatar
Michel Gaboly
De rien ;-))

Super ce système, je ne connaissais pas la fonction !
Merci pouir votre aide ;-)



--
Cordialement,

Michel Gaboly
www.gaboly.com