Bonjour, j'ai un programme qui permet de renommer les dossiers et sous dossiers d'un répertoire. Malheureusement la récurssivité pour changer le nom de mes sous dossiers ne fonctionne pas. Le programme en lui même est juste, pas de messages d'erreurs donc je n'arrive pas à trouver d'où vient le problème. Si quelqun a une solution.
Merci d'avance!
	
	
	
	
	
		
	
		
			
		
		
	
				
			Merci d'avance!
		VB:
	
	
	Sub Rename()
 Dim dossier As String
    dossier = "P:\Test\"
    
    'Appelle la procédure de recherche des fichiers
     rech_fichier dossier
 
    
    MsgBox "Terminé"
    
End Sub
Sub rech_fichier(repertoire As String)
    Dim RegEx As VBScript_RegExp_55.RegExp
    Dim Matches As VBScript_RegExp_55.MatchCollection
    Dim Match As VBScript_RegExp_55.Match
    Dim Filename As String
    Dim Result As String
    Dim Temp As String
 
    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(repertoire)
 
    For Each FileItem In SourceFolder.Files
    
        Set RegEx = New VBScript_RegExp_55.RegExp
        Filename = Dir(repertoire & "*.*")
        Do While Filename <> ""
             Temp = Replace(Filename, "-", "_")
             RegEx.Pattern = "^(.+)(_V[0-9]+)\.(.+)$" ' Teste si le nom est formalisé
             If Not RegEx.Test(Temp) Then
               RegEx.Pattern = "^([^0-9|\.|_]+)_*([0-9]*)\.(.+)$" ' Découpe le nom pour récupérer les parties à réassembler en excluant le underscore
               Set Matches = RegEx.Execute(Temp)
               If (Matches(0).SubMatches(1)) = "" Then
                 Result = repertoire & RegEx.Replace(Temp, "$1_V1.$3") ' réassemble avec les morceaux trouvés et V1 car pas de numérotation
               Else
                 Result = repertoire & RegEx.Replace(Temp, "$1_V$2.$3") ' Réassemble les morceaux en insérant le _V
               End If
            Else
               Result = repertoire & Temp
            End If
            
            Name repertoire & Filename As Result
            Filename = Dir()
        Loop
        
    Next FileItem
 
    '--- Appel récursif pour lister les fichier dans les sous-répertoires ---.
    For Each SubFolder In SourceFolder.SubFolders
        rech_fichier SubFolder.path
    Next SubFolder
    
End Sub