Bonjour,
Voilà chaque jour, je rentre des transactions via une template Excel et je souhaite créer un bouton pour sauvegarder et éviter une arborescence dans Explorer plutôt laborieuse.
La macro doit d'abord aller dans un répertoire, ensuite, en fonction de la date du jour, elle doit sauver le fichier dans un sous-répertoire de format YYYYMM. Bien entendu, si le sous-répertoire existe déjà, je ne veux pas le créer à nouveau. Bon jusqu'à cette partie ça va plutôt bien.
Ensuite la template doit se sauver dans le sous-répertoire en question en comprenant les infos date du jour + client+ prix+ volume
C'est là que je coince, car la macro sauve le fichier dans le répertoire et pas le sous-répertoire.
Voici les codes, je pense que l'erreur vient du "ActiveWorkbook.path" mais j'ignore comment le corriger.
Dites, vu que je vais fais beaucoup de deal, IDEALEMENT, j'aurai voulu recréer un sous-sous répertoire YYYYMMDD mais comme je ne maîtrise pas trop bien VBA...
Voici les codes:
Sub ConfoGas()
'Declaration
Dim NomRep As String
Dim Periode As Date
Dim Client As String
'Process
'La macro va dans le répertoire spécifié
NomRep = "C:\Documents and Settings\gcl180\My Documents\Hedges Pendings\"
Periode = Date
'La macro s'assure que le répertoire existe, si pas, elle le crée
If Dir(NomRep, vbDirectory) = "" Then MkDir NomRep
'Le répertoire précité doit être subdivisé en Années/Mois, de nouveau si l'on débute un nouveau mois, il faut créer le répertoire
If Dir(NomRep & Format(Periode, "YYYYMM" ), vbDirectory) = "" Then MkDir NomRep & Format(Periode, "YYYYMM" )
'Ensuite je souhaite sauver le fichier en sous ce dernier répertoire avec format YearMonthDay_Client_Prix volume.xlsx
Client = Year(Date) & Month(Date) & Day(Date) & " " & Range("C3" ) & "_" & Range("D3" ) & " " & Range("E3" ) & ".xlsx"
ActiveWorkbook.SaveCopyAs ActiveWorkbook.Path & "\" & Client
End Sub