recherche de chaine de caractères

ueshiba

XLDnaute Nouveau
Bonjour,

Mon problème est le suivant :

Je travaille sous excel 2003.
Sur un chemin défini, j'ai un dossier contenant de très nombreux sous-dossiers.
Le nom de ses sous-dossiers peux varier en termes de chaines de caractères.
Par contre, certains d'entre eux pourront contenir une valeur de caractères ( ex : toto), mais pas obligatoirement au même endroit de la chaine.
Mon soucis est de créer une macro qui pour chaque dossier dans mon chemin spécifié, lira tous les sous dossers, les ouvrira, en écartant tous les sous dossiers contenant la valeur d'une chaine de caractères définie en variables (es:toto titi etc..)

Pourriez-vous m'aidez ?
 

MichelXld

XLDnaute Barbatruc
bonsoir

je n'ai pas compris ce que tu souhaites réaliser exactement avec les dossiers , mais cette macro boucle sur tous les sous repertoires d'un dossier spécifique 'C:\\\\\\\\\\monRepertoire' et renvoie un message si le nom du repertoire contient la chaine de caracteres 'wiki'


Option Compare Text
Sub TestPresenceDossier()
'texté avec WinXP et Excel2002
Dim Racine As String

Racine = 'C:\\\\\\\\\\monRepertoire'
ListFilesInFolder Racine, True
End Sub

Sub ListFilesInFolder(SourceFolderName As String, IncludeSubfolders As Boolean)
' adapté de Ole P Erlandsen
'necessite d'activer la reference Microsoft Scripting RunTime
'dans Visual Basic Editor (Alt + F11)
'menu Outils
'References
'Coches la ligne 'Microsoft Scripting RunTime'
'cliques sur OK pour valider

Dim Fso As Scripting.FileSystemObject
Dim SourceFolder As Scripting.Folder, SubFolder As Scripting.Folder

On Error GoTo Fin

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

If IncludeSubfolders Then
For Each SubFolder In SourceFolder.subfolders

If SubFolder.Name Like '*wiki*' Then MsgBox SubFolder.Path

ListFilesInFolder SubFolder.Path, IncludeSubfolders
Next SubFolder
End If

Fin:
End Sub



bonne soirée
MichelXld
 

Discussions similaires

Réponses
19
Affichages
2 K