Oui il n' y a pas besoin de vérifier la liste des fichiers mais comme je l'ai dit en haut, il se pourrait que l'application qui produit les fichiers ne fonctionnent pas et oublie de produire un fichier, donc le fait d'afficher les fichiers permettrait de s'assurer que l'application a bien produit tous les fichiers du jour.
C'est bon, J'ai reussi à fabriquer le bon code.
Merci bcp pour ton idée, ça m'a bien aidé ; j'ai converti la variable tableau en variable string qui m'a permis d'affichier le résultat.
Voici mon code final :
Merci encore.
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 Sub CopieFichiers() 'Déclaration des différentes variables Dim Source As String, Destination As String, MaDate As Date, Fichier As String, DateFichier As Date Dim ListeFichiers As String, i As Integer, strTablo As String Dim MaListe As Variant Source = ThisWorkbook.Worksheets("Source répertoire").Range("B13").Value 'Affectation à la variable "Source" à une cellule dans la feuille Destination = ThisWorkbook.Worksheets("Source répertoire").Range("C13").Value 'Affectation à la variable "Destination" à une cellule dans la feuille MaDate = ThisWorkbook.Worksheets("Source répertoire").Range("C1").Value 'Affectation à la variable "MaDate" à une cellule dans la feuille ' MaDate = Format(Now, "dd/mm/yyyy") 'la date Aujourd'hui peut s'écrire comme cela Fichier = Dir(Source & "*.csv") 'Définition de la variable "Fichier", correspond à tous les fichiers qui ont une extension "csv" et qui se trouve dans le répertoire "Source" ListeFichiers = "" 'Initialisation de la variable "ListeFichiers" Do While Len(Fichier) > 0 Debug.Print Source & Fichier 'DateFichier = Fso.GetFile(Source & Fichier).DateCreated DateFichier = Format(FileDateTime(Source & Fichier), "dd/mm/yyyy") If DateFichier = MaDate Then Debug.Print Fichier FileCopy Source & Fichier, Destination & Fichier ListeFichiers = ListeFichiers & " | " & Fichier MaListe = Split(ListeFichiers, " | ") End If Fichier = Dir() Loop For i = 0 To UBound(MaListe) strTablo = strTablo & Chr(10) & MaListe(i) Next MsgBox "Voici la liste des fichiers copiés :" & strTablo End Sub
Cordialement,
Freudsw
Partager