![]() |
|
Forum
|
|
|
#1 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: février 2005
Messages: 3 618
|
bonjour
Il semblerait que la fonction FileSearch ne soit plus supportée dans Office2007, ce qui est bien dommage. Le complément ci joint permet de remplacer la fonction FileSearch. Le classeur xla contient un module de classe ClasseFileSearch pour gérer la recherche de fichiers sur votre PC. La procédure recherche des fichiers en fonction des critères spécifiés: * Le répertoire * Option pour rechercher dans les sous dossiers * Option pour rechercher un type de fichier spécifique * Option de tri et renvoie le résultat dans un tableau : * Le nom des fichiers * Le chemin * La taille des fichers (en octets) * La date de création * La date de dernière modification * Le type de fichier Installez la macro complémentaire dans le dossier qui leur ai réservé. Les fichiers .xla Excel2007 sont généralement stockés dans le répertoire: C:\Documents and Settings\NomUtilisateur\Application Data\Microsoft\AddIns Ensuite, pour que le complément soit opérationnel à chaque ouverture de l'application: Cliquez le bouton "Office". Cliquez sur le bouton "Options Excel". Sélectionnez le menu "Compléments". Choisissez "Compléments Excel" dans le menu déroulant "Gérer" (en bas de la fenêtre). Cliquez sur le bouton "Atteindre:" La fenêtre qui s'affiche est identique aux versions antérieures d'Excel. Cochez le complément "Classefilesearch". Cliquez sur le bouton "OK" pour valider. Désormais, lorsque vous souhaitez utilisez cette fonction de recherche, il suffit d'activer la référence: Dans l'éditeur de macro Menu Outils Références Cochez la ligne "ClFileSearch" Cliquez sur le bouton OK pour valider. Et vous pouvez utiliser une procédure de ce style: Code:
Sub Test()
'Nécessite d'activer la référence ClFileSearch
'(Dans l'éditeur de macros: Menu Outils/Références)
Dim i As Long
Dim Recherche As ClFileSearch.ClasseFileSearch
Set Recherche = ClFileSearch.Nouvelle_Recherche
With Recherche
'Répertoire de recherche
.FolderPath = "C:\Documents and Settings\mimi\dossier\excel"
'Recherche dans les sous dossiers
.SubFolders = False
'Option de tri:
'(Sort_None, sort_Name, sort_Path, sort_Size, sort_DateCreated, sort_LastModify, sort_Type)
'Pas de tri si non spécifié
.SortBy = sort_Name
'Option pour rechercher un type de fichier
'(Renvoie tous les fichiers si non spécifié)
.Extension = "*.xls"
'Execute la recherche
.Execute
'Boucle sur le tableau pour afficher le résultat de la recherche
'(.FoundFilesCount renvoie le nombre de fichiers trouvés)
For i = 1 To .FoundFilesCount
Debug.Print .Files(i).strNom 'nom
Debug.Print .Files(i).strChemin 'chemin complet
Debug.Print .Files(i).lngTaille & " octets" 'taille
Debug.Print .Files(i).DateCreated 'date création fichier
Debug.Print .Files(i).DateLastModified 'date dernière modification
Debug.Print .Files(i).TypeFichier 'type de fichier
Debug.Print "---"
Next
End With
Set Recherche = Nothing
End Sub
Nota. La procédure fonctionne aussi dans Excel2002 ... ;o) Bon après midi MichelXld Dernière modification par MichelXld 25/06/2007 à 20h21. |
|
|
|
| ANNONCES | |||
|
|
|
|
#3 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: mai 2005
Messages: 2
|
Salut MichelXLD et Kick71.
J'ai bien lu le problème et la réponse apportée par Michel. Il se trouve que j'ai le même souci sur un classeur qui me liste les fichiers d'un CD et malgré la manipulation conseillée, je ne réussi toujours pas à faire fonctionner mon ancienne macro sous excel 2007. Je joint mes fichiers (XLS de 2003 et xlsm de 2007) un peu épuré car ils sont assez volumineux. Y a t-il une solution ? Merci d'avance |
|
|
|
|
|
#4 (permalink) | |
|
XLDnaute Barbatruc
Date d'inscription: février 2005
Messages: 3 618
|
bonjour
Citation:
En remplacement tu peux installer le complément proposé dans le message précédent, et utiliser le module de classe associé. (Ce n'est qu'un exemple et tu peux bien entendu aussi créer tes propres procédures de recherche) ps La présentation de la Feuil1 me rappelle quelque chose ... ;o) Bonne journée MichelXld |
|
|
|
|
|
|
#5 (permalink) |
|
XLDnaute Accro
Date d'inscription: mars 2005
Messages: 1 097
|
Bonjour à MichelXLD ainsi qu'au forum
MichelXLD, je viens de tester le complément "Classefilesearch". Cela à l'air très bien (bien que je n'ai pas tout compris pour le Xla). Voici un petit fichier en reprenant le code de MichelXLD. Encore Merci Michel, Ah si tu n'existais pas, il faudrait t'inventer.
__________________
Salutations Michel Pour faire facilement vos comptes personnels http://www.excel-downloads.com/remos...s-MJ-2007.html Trouvez les couleurs Le JEU http://www.excel-downloads.com/forum...-couleurs.html Dernière modification par MJ13 07/10/2007 à 19h03. |
|
|
|
|
|
#6 (permalink) |
|
XLDnaute Nouveau
Date d'inscription: janvier 2008
Messages: 1
|
Bonjour,
![]() Je cherche un script qui permettrait de remplacer le FileSearch... Mais le hic est qu'il faudrait que celà puisse fonctionner quelque soit la version d'Excel... D'Excel 97 à Excel 2007. ![]() En effet, à mon boulot nous avons encore de vieux PC Windows 98 avec Excel 97... et également des PC récents avec Windows Vista et Excel 2007. Merci d'avance... |
|
|
|
| ANNONCES | |
![]() |
| Outils de la discussion | |
|
|
Discussions similaires
|
||||
| Discussion | Auteur | Forum | Réponses | Dernier message |
| fonction pour déterminer montant mensuel à épargner pour atteindre un capital | chcqt | Forum Excel | 2 | 10/06/2007 14h46 |
| Test de macro sous excel2007 | marie49 | Forum Excel | 6 | 08/11/2006 17h07 |
| Formule pour 1 pour homme et 2 pour femme | Léon de marseille | Forum Excel | 9 | 26/09/2005 09h23 |
| problème avec une formule pour rentré des heures et pour la case total | Christophe | Forum Excel Downloads - Archives | 15 | 08/11/2004 22h28 |
| problemes pour 2 courbes qui n'ont pas le meme nombre de lignes pour les donnees | williams | Forum Excel Downloads - Archives | 0 | 24/10/2004 21h44 |