Pb FileSearch pour Michel

A

Antoine

Guest
Bonsoir le forum,

Désolé Michel de te solliciter de nouveau pour mon Pb de FileSearch, qui au vu des différents Fils,semblerait être un bug de config? pour info je suis avec w2k S/P4 et office 2003 S/P1. Ca me console que chez toi la procédure fonctionne, mais après différentes tentatives je suis tjs sec.
as tu une solution 'alternative' pour contourner le Pb.
je te remercie de ta réponse.

Antoine
 
M

michel

Guest
Re: recherche classeur par CreateObject("Scripting.FileSystemObject")

bonjour Antoine

cela ne sert à rien de multiplier les posts pour un meme sujet
je te conseille avant tout de lire ( ou de relire ) la charte du forum XLD

Charte XLD


la procedure ci dessous ( adaptée de Ole P Erlandsen ) , permet de rechercher des classeurs dans un repertoire et les sous répertoires , et de les ouvrir en fonction d'un mot clé saisi dans un InputBox

la procedure necessite d'activer la reference "Microsoft Scripting Runtime "


Sub rechercheFichiers_Repertoire_SousRepertoires()
Dim Dossier As String
Dim Cible As String

Dossier = "C:\Documents and Settings\michel\dossier\general\excel"

Cible = InputBox("Saisir le nom ou une partie du fichier à retrouver ", "Recherche Fichier")
If Cible = "" Then Exit Sub

ListFilesInFolder Dossier, Cible, True

End Sub

Sub ListFilesInFolder(SourceFolderName As String, motCible, IncludeSubfolders As Boolean)
' adapté de Ole P Erlandsen
'necessite d'aviter la reference Microsoft Scripting RunTime
Dim Fso As Scripting.FileSystemObject
Dim SourceFolder As Scripting.Folder
Dim SubFolder As Scripting.Folder
Dim FileItem As Scripting.File

Set Fso = CreateObject("Scripting.FileSystemObject")
Set SourceFolder = Fso.GetFolder(SourceFolderName)

For Each FileItem In SourceFolder.Files
If InStr(1, FileItem.Name, motCible, vbTextCompare) > 0 And Right(FileItem.Name, 4) = ".xls" Then
MsgBox "Fichier trouvé : " & vbLf & FileItem.Name, , _
"Recherche des classeurs contenant le mot " & motCible

Workbooks.Open SourceFolder.Path & "\" & FileItem.Name
End If
Next FileItem

If IncludeSubfolders Then 'recherche dans les sous repertoires
For Each SubFolder In SourceFolder.subfolders
ListFilesInFolder SubFolder.Path, motCible, True
Next SubFolder
End If


End Sub


bon week end
MichelXld
 

Discussions similaires