Filesearch...

MonsieurVax Messages postés 2 Date d'inscription lundi 3 février 2003 Statut Membre Dernière intervention 5 février 2003 - 3 févr. 2003 à 23:25
Yakusa58 Messages postés 4 Date d'inscription dimanche 13 juin 2004 Statut Membre Dernière intervention 13 juin 2004 - 13 juin 2004 à 02:49
Bonjour,

Je dois rechercher dans plusieurs fichiers d'un répertoire n string. Pour cela, j'utilise FileSearch.

Pour l'instant, je cherche 3000 x 1 chaîne dans environ 3000 fichiers et ça prend un temps bête.

En fait, j'aimerais qu'il ne cherche pas dans tous les fichiers mais qu'il s'arrête dès qu'il a trouvé un résultat.

Y a-t-il une solution avec FileSearch ou autre que filesearch?

Merci beaucoup!

Monsieur Vax

3 réponses

cs_KifKif Messages postés 88 Date d'inscription jeudi 7 mars 2002 Statut Membre Dernière intervention 4 avril 2008
4 févr. 2003 à 09:15
KIfKif
Exemple donné par microsoft

Cet exemple utilise la fonction Dir pour vérifier si certains fichiers et répertoires existent.

Dim MyFile, MyPath, MyName
' Renvoie "WIN.INI" si ce fichier existe.
MyFile = Dir("C:\WINDOWS\WIN.INI")

' Renvoie le nom de fichier avec l'extension indiquée.
' Si plusieurs fichiers *.ini
' existent, le premier fichier trouvé est renvoyé.
MyFile = Dir("C:\WINDOWS\*.INI")

' Appelle de nouveau Dir sans argument pour renvoyer le
' fichier *.INI suivant dans le même répertoire.
MyFile = Dir

' Renvoie le premier fichier *.TXT avec l'attribut
' fichier caché.
MyFile = Dir("*.TXT", vbHidden)

' Affiche les noms dans C:\ représentant des
' répertoires.
MyPath = "c:" ' Définit le chemin d'accès.
' Extrait la première entrée.
MyName = Dir(MyPath, vbDirectory)
Do While MyName <> "" ' Commence la boucle.
' Ignore le répertoire courant et le répertoire
' contenant le répertoire courant.
If MyName <> "." And MyName <> ".." Then

' Utilise une comparaison au niveau du bit pour
' vérifier que MyName est un répertoire.
If (GetAttr(MyPath & MyName) _
And vbDirectory) = vbDirectory Then
' Affiche l'entrée uniquement si elle
Debug.Print MyName
End If ' représente un répertoire.
End If
MyName = Dir ' Extrait l'entrée suivante.
Loop

J'espère que cela suffira pour ton problème.
8-)

à +
0
MonsieurVax Messages postés 2 Date d'inscription lundi 3 février 2003 Statut Membre Dernière intervention 5 février 2003
5 févr. 2003 à 21:37
Merci pour les infos

a+

Monsieur Vax
0
Yakusa58 Messages postés 4 Date d'inscription dimanche 13 juin 2004 Statut Membre Dernière intervention 13 juin 2004
13 juin 2004 à 02:49
SAlut g le meme problem que toi
je desire fair un recherche d'un fichier dont j'ai saisie le nom o paravant dans un TextBox
jen ne connais pas le debut du nom du fichier ni la fin

donc avec la comande filesearch
je desirerez pourvoir fair une recherche
voila ce ke ca donne

With Application.FileSearch
.NewSearch
.FileType = msoFileTypeAllFiles
.Filename = 'ici je voudrai inserez la valeur ke g donnais au textbox en exemple de ce genre *textbox*.xls

'textebox c la valeur ke g saisie dasn la boite et * represente un nombre indéfini de caractere avant et apres cette valeur

.LookIn = "c:\DDfacturation\devis"
.SearchSubFolders = True
.Execute
With .FoundFiles
'ensuite insérez le ou les résultat trouver dans un listbox

voila ce ke je voudrais fair

si vous pouver maider merci bocoup
[mailto:yakusa58@hotmail.com mailto:yakusa58@hotmail.com]
0
Rejoignez-nous