Savegarder dans un chemin specifique + nom

Bonjours je m’interrogerai si quelqu'un pourrai m’aider

Merci avant tout de votre aide.

J'aimerai en gros sauvegarder dans un chemin prédéfinie le classeur Excel

Celui-ci enregistrera dans un dossier spécifique au nom de l’employer.

Exemple dans la cellule M5 , J’ai une liste de nom, si exemple je choisi Jonathan

Il créera une copie du fichier dans C:\Jonathan\ date+jonathan.xlms

Et si exemple je choisi richard dans M5, celui-ci enregistrera dans C:\Richard\ date+Richard.xlms

Avec un petit message box qui dira sauvegarde complet et fermera le classeur à la fin

Supposant que le dossier au nom de chacune des personne soi déjà créer, esceque c’est possible

Qu’Excel recherche le bon dossier pour s'enregistrer.

Bonsoir,

Sub SaveCopy()
Dim LePath$, LeFile$
  LePath = "C:\" & [M5] & "\"
  If Dir(LePath) = "" Then MkDir (LePath)
  LeFile = LePath & Format(Date, "yymmdd") & "_" & [M5] & ".xlsm"
  ThisWorkbook.SaveCopyAs LeFile
  If MsgBox("Copie sauvegardée dans le dossier " & LePath & "." & Chr(10) & "Voulez vous fermer le fichier ?" _
     , vbYesNo + vbInformation, "Sauvegarde réussie") = vbYes Then ThisWorkbook.Close
End Sub

Cdt,

Darzou

Super Darzou!! et vraiment merci, ton code semble etre fonctionnelle et sans bug , je me retrouve par contre avec ce probleme au moment ou excel ferme il affiche ceci et aussi l'application ne ferme pas au complet mais juste le tableur , sa serai bien si Excel fermerai au complet.

Aurai til moyen d'empêcher cette fenêtre de s'afficher , jai essayer mettre le fichier en lecture seule sans succès sa affiche quand même au moment de fermer le programme .

Avec application.quit au lieu de thisworkbook.close.

Cdt,

Darzou

Merciii , mais ne fonctionnai pas mais ... jai juste ajouter

Application.DisplayAlerts = False 

en plus de ton code et sa fonctionne imecable merci encor

voici la solution final

ajouter

thisworkbook.close.

et

Application.DisplayAlerts = False

Le code complet final

Sub SaveCopy()
Dim LePath$, LeFile$
  LePath = "C:\" & [M5] & "\"
  If Dir(LePath) = "" Then MkDir (LePath)
  LeFile = LePath & Format(Date, "yymmdd") & "_" & [M5] & ".xlsm"
  ThisWorkbook.SaveCopyAs LeFile
  Application.DisplayAlerts = True
  If MsgBox("Copie sauvegardée dans le dossier " & LePath & "." & Chr(10) & "Voulez vous fermer le fichier ?" _
     , vbYesNo + vbInformation, "Sauvegarde réussie") = vbYes Then Application.Quit
Application.DisplayAlerts = False
End Sub

Enfin, je ne vois pas trop à quoi ils servent vos application.displayalerts...

Rechercher des sujets similaires à "savegarder chemin specifique nom"