Rechercher un fichier sur une partie de son nom

Résolu
kerberos69
Messages postés
21
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
9 juillet 2008
- 10 juin 2008 à 12:13
kerberos69
Messages postés
21
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
9 juillet 2008
- 10 juin 2008 à 15:35
bonjour,


une appli nous genere une multitude de fichier datés du jour dans le meme folder.


pour le besoin du service, je dois recuperer tous les fichiers du folder qui commence par 'APPLI_Datedujour'


tous les fichiers s'appellent ''APPLI_Datedujour_n°detraitement01', 02,03,04....
dans le folder il y'a aussi les fichiers des jours precedents.


voici mon code pour recuperer la liste des fichiers du folder


strComputer = "."
Set objWMIService = GetObject("winmgmts:\" & strComputer & "\root\CIMV2")wmiQuery ("SELECT name FROM CIM_DataFile WHERE Drive ""d:"" AND Path=""[file://\\path\\ \\path\\]""")


Set colFiles = objWMIService.ExecQuery(wmiQuery)




je ne veux recuperer que les fichiers de la de la date du jour et qui ne commencent que par "APPLI_DateduJour"" (car bien sur il y'a d'autres fichiers avec d'autres syntaxes qui sont aussi de la date du jour)


comment faire svp ?

2 réponses

cs_JMO
Messages postés
1854
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
24 juin 2018
26
10 juin 2008 à 13:07
 Bonjour,

WMI n'est pas indispensable.

Dim objFso, objFile
Dim strPath, strDate

strPath = "c:"
strDate = Replace(Date,"/","-")
MsgBox strDate & vbCr & Len("Appli_" & strDate)

Set objFso = CreateObject("Scripting.FileSystemObject")

For Each objFile In objfso.GetFolder(strPath).Files
    If Left(objFile.Name,16) = "Appli_" & strDate Then MsgBox objFile,,objFile.Name
Next

Set objFso = Nothing

jean-marc
3
kerberos69
Messages postés
21
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
9 juillet 2008

10 juin 2008 à 15:35
merci

j'ai adapté votre code et cela fonctionne.

Encore merci

simple question, pourquoi WMI n'est pas une bonne solution selon vous  ?
0