Récupérer une cellule pour le nom de fichier

  • Initiateur de la discussion Initiateur de la discussion anacondrilla
  • 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 !

A

anacondrilla

Guest
Bonjour à tous je suis nouveau sur le forum.

J'ai trouvé plusieurs messages qui parler de récupérer le nom de fichier dans une cellule mais qu'en est il de l'inverse?

En effet, je souhaite que systématiquement quand j'ouvre un fichier de base et que je remplisse une case, quand je fait "enregistrer sous" il me propose directement d'enregistrer sous le nom de A1 par exemple.

Merci d'avance,

Ana
 
Re : Récupérer une cellule pour le nom de fichier

Bonjour à tous,
Bienvenue sur XLD,

Ceci dans un module standard :
VB:
Option Explicit
Sub Test()
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & Cells(1, 1).Text
End Sub

Ou ceci dans le module ThisWorkBook :
VB:
Option Explicit
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & Cells(1, 1).Text
End Sub

A + à tous
 
Re : Récupérer une cellule pour le nom de fichier

Bonsoir anacondrilla, bonsoir Jean-Claude 🙂

Et si l'on veut afficher la boîte de dialogue :

Code:
Sub EnregistrerSous()
Application.Dialogs(xlDialogSaveAs).Show [A1]
End Sub
A+
 
Re : Récupérer une cellule pour le nom de fichier

Re Jean-Claude,

Pour ta macro dans ThisWorkbook je crois qu'il faut compliquer un peu, sinon...

Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Cancel = True
On Error Resume Next 'si A1 est vide ou contient des caractères interdits...
Application.EnableEvents = False
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & Cells(1, 1).Text
Application.EnableEvents = True
End Sub
A+
 
Re : Récupérer une cellule pour le nom de fichier

Bonjour anacondrilla, JC, le forum,

Et encore, je n'avais pas compliqué assez, vicieuse cette macro 🙂

Code:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Cancel = True
Application.DisplayAlerts = False 'facultatif, si classeur A1 déjà créé...
On Error Resume Next 'si A1 est vide ou contient des caractères interdits...
Application.EnableEvents = False
If Not Me.Saved Then Me.Save 'enregistre les modifications
Me.SaveAs Me.Path & "\" & Cells(1, 1).Text 'si nouveau nom en A1
Application.EnableEvents = True
End Sub
A+
 
Dernière édition:
Re : Récupérer une cellule pour le nom de fichier

Bonjour,

Merci à tous pour vos réponse.

Cependant je suis un peu novice en vba je maîtrise plutôt bien les différentes fonctions d'excel pas ça...

Pourriez vous m'indiquer un endroit ou je peux trouver un tuto pour mettre en pratique vos précieux conseil ? (je sais tout de même accéder l'interface vba...)

merci encore,

Cdt,

Ana
 
Re : Récupérer une cellule pour le nom de fichier

Bonjour à tous,

Voir le code de l'ami Job dans le module ThisWorkBook.
Tu fermes le classeur et automatiquement le fichier s'enregistre avec le texte déposé en A1 (prendre soin de terminer par .xls, mais cela peut s'arranger).

A+ à tous
 

Pièces jointes

- 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

Retour