Bonjour à tous,
Je suis à bout touchant dans l'élaboration de mon nouveau projet VBA en Excel.
Je bloque un peu sur une dernière fonction qui me permettra de renommer plusieurs fichiers se trouvant dans un répertoire déterminé.
Dans les détails, je crée un nouveau dossier si certains champs de mon userform sont modifiés et je souhaite déplacer l'ensemble des fichiers que contient l'ancien dossier dans le nouveau dossier et je souhaite aussi les modifier.
J'arrive à créer le nouveau dossier, déplacer les fichiers et supprimer l'ancien dossier vide.
Comment est-ce que je procède maintenant pour modifier l'ensemble des noms des fichiers ?
Pour information, tous mes fichiers se présentent sous cette nomenclature : Désignation du fichier (qui n'est pas fixe)_Nom de la personne (contenu dans une variable)_Prénom de la personne (contenu dans une variable)_Date de naissance (Contenu dans une variable).*.* => XXX_Nomclient_Prenomclient_Datenaissanclient.extension
La désignation du fichier pour chaque fichier doit donc être récupérée et les caractères après le premier _ modifiés en fonction des variables stockées.
Et je dois faire une boucle sur l'ensemble des fichiers pour les modifier :-D
Voici mon code
D'avance merci pour votre aide et excellente journée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51 If ActiveWorkbook.Worksheets("Datas dossiers personnels").Range("C12").Value <> "" Then Anneeavant_temp = Year(ActiveWorkbook.Worksheets("Datas dossiers personnels").Range("CE12").Value) Moisavant_temp = Month(ActiveWorkbook.Worksheets("Datas dossiers personnels").Range("CE12").Value) If Moisavant_temp = "1" Then Moislettreavant_temp = "01 Janvier" ElseIf Moisavant_temp = "2" Then Moislettreavant_temp = "02 Février" ElseIf Moisavant_temp = "3" Then Moislettreavant_temp = "03 Mars" ElseIf Moisavant_temp = "4" Then Moislettreavant_temp = "04 Avril" ElseIf Moisavant_temp = "5" Then Moislettreavant_temp = "05 Mai" ElseIf Moisavant_temp = "6" Then Moislettreavant_temp = "06 Juin" ElseIf Moisavant_temp = "7" Then Moislettreavant_temp = "07 Juillet" ElseIf Moisavant_temp = "8" Then Moislettreavant_temp = "08 Août" ElseIf Moisavant_temp = "9" Then Moislettreavant_temp = "09 Septembre" ElseIf Moisavant_temp = "10" Then Moislettreavant_temp = "10 Octobre" ElseIf Moisavant_temp = "11" Then Moislettreavant_temp = "11 Novembre" ElseIf Moisavant_temp = "12" Then Moislettreavant_temp = "12 Décembre" End If Dossiermoisavant = "C:\Users\jordanm\Desktop\Gestion INAD\14_R1" & "\" & Moislettreavant_temp & " " & Anneeavant_temp Dossierclientavant = Dossiermoisavant & "\" & Nomclientavant_temp & "_" & Prenomclientavant_temp & "_" & Datenaissanceavant_temp Nomclientavant_temp = ActiveWorkbook.Worksheets("Datas dossiers personnels").Range("C12").Value Prenomclientavant_temp = ActiveWorkbook.Worksheets("Datas dossiers personnels").Range("E12").Value Datenaissanceavant_temp = Format(ActiveWorkbook.Worksheets("Datas dossiers personnels").Range("F12").Value, "ddmmyyyy") If Not FSO.FolderExists(Dossiermois) Then Set fsoMonDossier = FSO.CreateFolder(Dossiermois) End If If Not FSO.FolderExists(Dossierclient) Then Set fsoMonDossier = FSO.CreateFolder(Dossierclient) End If FSO.CopyFile Dossierclientavant & "*.*", Dossierclient FSO.DeleteFolder Dossierclientavant End If
Michael
Partager