Enregistrement par macro dans répertoire précis

  • Initiateur de la discussion Initiateur de la discussion hyperion66
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

H

hyperion66

Guest
Je voudrais que ma feuille soit enregistrée dans un répertoire précis (ça, c'est déjà fait), mais dans un sous répertoire de l'année en cours ou de l'année récupérée sur cette meme feuille.
Voilà mon code actuel :
Code:
Sub Enregistrement()
Dim Chemin1$, Chemin2$, Client$, Fichier$, Numfact$, Jour$
Chemin1 = "H:\Zerobug backup\Factures\"
Chemin2 = "D:\Gestion\Factures\"
Jour = Format(Now(), "ddmmyyyy")
Client = Range("H7")
Numfact = Range("I15")
Fichier = Jour & "_" & Numfact & ".xls"
If Dir(Chemin1 & Client, 16) = "" Then MkDir Chemin1 & Client
ActiveWorkbook.SaveAs Chemin1 & Client & "\" & Fichier
If Dir(Chemin2 & Client, 16) = "" Then MkDir Chemin2 & Client
ActiveWorkbook.SaveAs Chemin2 & Client & "\" & Fichier
Pour Chemin2 par exemple, pour une facture ayant comme date 2007, que la macro me l'enregistre dans D:\Gestion\Factures\2007\[Client]\Fichier.xls

Comment faire ?

Merci
 
Re : Enregistrement par macro dans répertoire précis

bonsoir,

Comme tu introduis un répertoire supplémentaire, il faut aussi le créer, et donc rajouter :

If Dir(Chemin1 ), 16) = "" Then MkDir Chemin1


avant le contrôle :

If Dir(Chemin1 & Client, 16) = "" Then MkDir Chemin1 & Client

et idem pour Chemin2 bien sûr !
 
Re : Enregistrement par macro dans répertoire précis

bonjour,

D'accord je te remet tout le code modifié :

Sub Enregistrement()
Dim Chemin1$, Chemin2$, Client$, Fichier$, Numfact$, Jour$
Chemin1 = "H:\Zerobug backup\Factures\" & Format(Now(), "yyyy") & "\"
Chemin2 = "D:\Gestion\Factures\" & Format(Now(), "yyyy") & "\"
Jour = Format(Now(), "ddmmyyyy")
Client = Range("H7")
Numfact = Range("I15")
Fichier = Jour & "_" & Numfact & ".xls"
If Dir(Chemin1 ), 16) = "" Then MkDir Chemin1
If Dir(Chemin1 & Client, 16) = "" Then MkDir Chemin1 & Client
ActiveWorkbook.SaveAs Chemin1 & Client & "\" & Fichier
If Dir(Chemin2 ), 16) = "" Then MkDir Chemin2
If Dir(Chemin2 & Client, 16) = "" Then MkDir Chemin2 & Client
ActiveWorkbook.SaveAs Chemin2 & Client & "\" & Fichier

Ainsi cela devrait fonctionner.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

T
Réponses
8
Affichages
2 K
tdenis
T
S
Réponses
5
Affichages
2 K
Snoopy6102000
S
C
Réponses
1
Affichages
814
Compte Supprimé 979
C
C
Réponses
4
Affichages
3 K
cybercodes
C
G
Réponses
4
Affichages
3 K
guerome
G
T
Réponses
21
Affichages
3 K
Retour