[RESOLU] Sauvegarde par bouton

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 !

lechti31

XLDnaute Occasionnel
Bonjour a tous
J'ai lu et relu les message traitant du même problème mais cela ne m'a pas beaucoup aidé
Je dois être idiot 🙁
Mon fichier d'origine s'appelle "Récapitulatif" et ce trouve sur une clé USB
J'aimerai avec un bouton faire une sauvegarde de mon fichier comportant plusieurs feuilles.
Dans la feuille "Accueil" à la cellule E7 j'ai un titre de document par exemple "Récapitulatif du mois 815" et le bouton sur la même feuille.
J'aimerai que le bouton sauvegarde mes modifications apportées au document sur le disque C:\documents\ et la le nom du fichier en E7.xlsm
Voici mon code

Sub Sauvegarde()
Sheets("Accueil").Select
titre = Cells(7, 5).Value
fichier = "C:\Documents\" & titre & ".xlsm"
ThisWorkbook.SaveCopyAs Filename:=fichier
End Sub

Et le message d'erreur est
Microsoft excel ne peut acceder au fichier
"C:\Documents\Récapitulatif du mois 815.xlsm"

Merci pour votre aide
 
Dernière édition:
Re : Sauvegarde par bouton

bonsoir letchi31 et le forum
est ce que ce code ferait ton affaire, il faut le mettre dans this worbook, c'est pour sauvegarder par la croix rouge
Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
 On Error GoTo erreur
 varname = Sheets("Feuil1").Range("g17").Value
 fname = InputBox("enregistrer le fichier sous le nom", "Enregistrement", varname)
 ActiveWorkbook.SaveAs Filename:=fname
 Exit Sub
erreur:
  rep = MsgBox("Une erreur c'est produite, voulez vous quitter sans sauvegarder", vbYesNo)
  If rep = 7 Then Cancel = True
End Sub
il y a un msgbox qui s'ouvre afin de demander s'il faut sauver sous le nom qui est en ("g17") ou sous un autre nom ou ailleurs en changeant "g17"
avant il faut cocher enregistrer dans les option d'excel pour retrouver le fichier
cordialement si cela peut aider
 
Re : Sauvegarde par bouton

Bonsoir lechti31,

Une piste possible est que le répertoire "C:\documents" n'existe pas pas.

Il faut donc le vérifier et le créer le cas échéant.

Exemple à tester chez toi:

Code:
Sub Sauvegarde()
Sheets("Accueil").Select
titre = Cells(7, 5).Value
If Dir("C:\Documents") = "" Then MkDir ("C:\Documents\")
fichier = "C:\Documents\" & titre & ".xlsm"
ThisWorkbook.SaveCopyAs Filename:=fichier
End Sub
a +

Cordialement.

Oups, tir croisé! Bonsoir grisan29.
 
Re : [RESOLU] Sauvegarde par bouton

Bonsoir
Papou_net ca marche par contre quand j'ouvre le fichier sauvegardé et que je le modifie, quand j'appuie sur le bouton sauvegarde ca ne fonctionne pas
Pouvez-vous me dépanner merci

Bonsoir lechti31,

Comme ça, sans voir le fichier en question, difficile pour moi de te répondre.

Est-ce que l'extension qui figure dans la variable "fichier" est bien ".xlsm" et non ".xlsx"?

A +

Cordialement.
 
Re : [RESOLU] Sauvegarde par bouton

Salut
alors voici une ébauche car je ne peux pas devoiler plus sur mon projet
J'ai le fichier vide dans mon disque d:
et quand je sauvegarde sur le disque c:\documents ca plante maintenant pourquoi je sais pas alors que ca fonctionnait
et quand j'ouvre le fichier cree sur C pour le modifier ca plante aussi
Merci de ton aide
 

Pièces jointes

Re : [RESOLU] Sauvegarde par bouton

Salut Papou-net
Ok mais maintenant si je veux modifier le fichier crée dans le repertoire c:\documents\recapitulatif
donc j'ouvre le fichier recapitulatif du dossier c:\documents\ et que je veuille l'enregistrer avec le bouton ca plante
Certainement parcequ'il est ouvert je suppose
Coment puis je coder la macro pour que je puisse enregistrer par le bouton
Merci
 
Re : [RESOLU] Sauvegarde par bouton

Salut Papou-net
Ok mais maintenant si je veux modifier le fichier crée dans le repertoire c:\documents\recapitulatif
donc j'ouvre le fichier recapitulatif du dossier c:\documents\ et que je veuille l'enregistrer avec le bouton ca plante
Certainement parcequ'il est ouvert je suppose
Coment puis je coder la macro pour que je puisse enregistrer par le bouton
Merci

Bonjour lechti31,

Il suffit de modifier la condition:

Code:
Sub Bouton1_Clic()
Sheets("Accueil").Select
titre = Cells(7, 5).Value
If Dir("C:\Documents\") = "" Then
  MkDir ("C:\Documents\")
  fichier = "C:\Documents\" & titre & ".xlsm"
  ThisWorkbook.SaveCopyAs Filename:=fichier
  Else
  ThisWorkbook.Save
End If
End Sub
A +

Cordialement.
 
- 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

Discussions similaires

Réponses
6
Affichages
1 K
A
Réponses
1
Affichages
737
B
  • Résolu(e)
Réponses
2
Affichages
2 K
Black punch
B
B
  • Question Question
Réponses
1
Affichages
2 K
R
Réponses
0
Affichages
3 K
R
B
Réponses
2
Affichages
981
bilbinou
B
J
  • Question Question
Réponses
14
Affichages
2 K
JJS2107
J
Réponses
39
Affichages
6 K
Retour