Tatie Danielle
XLDnaute Nouveau
Bonjour à tous.
J'affiche dans une feuille Excel la liste de tout mes fichiers .xls contenu dans un répertoire de mon PC.
Maintenant j'aimerais que via une Liste déroulante, cela m'affiche seulement les fichiers portant une partie du mot contenu dans cette liste déroulante.
C'est à dire par exemple :
Dans mon répertoire j'ai un fichier fraise_des_bois.xls, fraise.xls, banane_flambe.xls, banane_coupe.xls, pomme.xls.
Dans mon fichier Excel (celui avec la liste) j'ai dans ma liste déroulante "fraise", "pomme", "banane"...
Quand je choisi par exemple "fraise" celà m'affiche fraise.xsl et fraise_des_bois.xsl, si je choisi "banane" celà m'affichera les 2 fichiers contenant le mot banane, etc...
Comment réaliser la chose ? 😕
Je met le bout de code me permettant d'afficher la liste de tout les fichiers du repertoire au cas où 😉
merci de votre aide ^^
J'affiche dans une feuille Excel la liste de tout mes fichiers .xls contenu dans un répertoire de mon PC.
Maintenant j'aimerais que via une Liste déroulante, cela m'affiche seulement les fichiers portant une partie du mot contenu dans cette liste déroulante.
C'est à dire par exemple :
Dans mon répertoire j'ai un fichier fraise_des_bois.xls, fraise.xls, banane_flambe.xls, banane_coupe.xls, pomme.xls.
Dans mon fichier Excel (celui avec la liste) j'ai dans ma liste déroulante "fraise", "pomme", "banane"...
Quand je choisi par exemple "fraise" celà m'affiche fraise.xsl et fraise_des_bois.xsl, si je choisi "banane" celà m'affichera les 2 fichiers contenant le mot banane, etc...
Comment réaliser la chose ? 😕
Je met le bout de code me permettant d'afficher la liste de tout les fichiers du repertoire au cas où 😉
Code:
Sub ListFilesInFolder(strFolderName As String, bIncludeSubfolders As Boolean)
'Activer la reference Microsoft Scripting RunTime
Static FSO As FileSystemObject
Dim oSourceFolder As Scripting.Folder
Dim oSubFolder As Scripting.Folder
Dim oFile As Scripting.File
Static wksDest As Worksheet
Static iRow As Long
Static bNotFirstTime As Boolean
[A1:A100].ClearContents
iRow = 2
If Not bNotFirstTime Then
Set wksDest = ActiveSheet
Set FSO = CreateObject("Scripting.FileSystemObject")
bNotFirstTime = True
End If
Set oSourceFolder = FSO.GetFolder(strFolderName)
For Each oFile In oSourceFolder.Files
wksDest.Cells(iRow, 1) = oFile.Name
iRow = iRow + 1
Next oFile
Sub Chemin()
ListFilesInFolder "C:\MesFichiers", True
End Sub
merci de votre aide ^^
Dernière édition: