Boucler dans un répertoire pour changer des noms de fichiers
Bonsoir le forum
En pièce jointe j'ai mis un fichier (renom-dos)qui à l'aide d'une macro me permet de préparer des chemins et des noms afin de modifier le nom de fichiers contenus dans des sous répertoire dans un répertoire.
Ce que je cherche à faire, c'est à boucler dans le même répertoire afin de changer:
1) le nom d'un fichier contenu dans un sous répertoire portant le nom que je veux lui attribuer,
Ex:
Rep1
sousrep1
fichier.txt
sousrep2
fichier.txt
sousrep3
fichier.txt
2) faire une copie du même fichier au format *.txt en *.xlsx
Ex:
Rep1
sousrep1
fichier.txt
fichier.xlsx
sousrep2
fichier.txt
fichier.xlsx
sousrep3
fichier.txt
fichier.xlsx
puis pour finir importer les données de chaque fichier *.xlsx dans une seule et unique nouvelle feuille du classeur en sautant 2 lignes entre chaque tableau importer.
Je mets 1 modèle de fichier (fiber_info_otdr.txt) que je cherche à renommer afin de faire des tests (le fichier à renommer porte toujours le même nom, mais contenir un tableau avec un nombre de ligne différent
d'avance je vous remercie pour votre aide et votre disponibilité
Bonsoir le forum
Afin de renommer mes fichiers dans tous mes sous répertoires, j'ai écris ce code,
Function mDF_Choix(Titre As String) As String
Dim objFolder As Object
Dim Chemin As String
Set objFolder = CreateObject("Shell.Application").BrowseForFolder(0, Titre, 513, 0)
If objFolder Is Nothing Then Exit Function
On Error Resume Next
Chemin = objFolder.Items.Item.Path & "\"
On Error GoTo 0
mDF_Choix = IIf(Left(Chemin, 1) = ":", "", Chemin)
End Function
Sub Renomme_fich()
Dim Chemin As String
Dim Rep, Ligne, F, fold, filtre
Rep = mDF_Choix("Choisissez le répertoire à traiter") ' répertoire à examiner
If Rep = "" Then Exit Sub
Chemin = "Rep"
Set fold = CreateObject("Scripting.FileSystemObject").GetFolder(folder)
For Each F In fold.SubFolders
If Right(F, 1) <> "\" Then listfolder F & "\", filtre, a, n Else listfolder F, filtre, a, n
Next
For Ligne = 1 To 100
'For Each F In fold.SubFolders
Name Chemin & Cells(Ligne, 1) As Chemin & Cells(Ligne, 2)
Next Ligne
'Next
End Submais je plante, j'arrive bien à aller dans le répertoire, mais après j'ai le message d'erreur suivant : Erreur d'exécution '5': Argument ou appel de procédure incorrect
en surlignant
Set fold = CreateObject("Scripting.FileSystemObject").GetFolder(folder)je ne comprends pas
Merci pour votre aide
Je mets en pièce jointe un fichier qui je pense pourrait faire exactement de que je veux pour le renommage des fichiers, j'ai juste besoin par contre il s'arrête au niveau du répertoire, alors que loi j'ai besoin d'aller renommer mes fichiers dans chaque sous-répertoires de mon répertoire
Dans la colonne "I" du fichier j'ai mis le chemin de chaque fichiers que je voudrais renommer
Si quelqu'un pouvait y regarder, Svp
D'avance merci pour votre aide et votre disponibilité