Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA Enregistrer sous

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 !

Matt51100

XLDnaute Occasionnel
Bonjour le forum,

une petite question.

Comment, avec une macro, lancer un enregistrement sous, avec un chemin spécifié (Ex : C:\Dossier1\Dossier2) de manière à ce que la macro arrête de s'exécuter lors que l'on arrive dans le Dossier2 pour pouvoir choisir ensuite un des dossier contenus dans Dossier2. C'est à dire que la fenêtre d'enregistrer sous se soit ouverte sur tout le chemin spécifié et que l'on puisse ensuite terminer ce chemin manuellement.

Merci d'avance.

A+, Matt.
 
Re : VBA Enregistrer sous

Bonjour Matt51100 et le forum,
Voici le code qui permet d'ouvrir la boite de dialogue enregistrer sous (si j'ai bien compris ce que tu veux)

Sub w1()
Application.Dialogs(xlDialogSaveAs).Show
End Sub
 
Re : VBA Enregistrer sous

Bonjour coco,

Effectivement j'ai vu ce code mais la fenêtre qui s'ouvre, s'ouvre sur le dernier chemin pour lequel enregistrer sous a été utiliser. j'aimerais en plus mettre un chemin d'enregistrement spécifique.

A+, matt.
 
Re : VBA Enregistrer sous

Bonjour,

Code:
Sub Enregistrer1() 
Dim chemin As String, AdrEnregistr As String
chemin = CreateObject("WScript.Shell").specialFolders("Desktop") 'ici tu place ton endroit exact
AdrEnregistr = Application.GetSaveAsFilename(InitialFileName:= chemin & "\" & NOMFICHIER, Filefilter:="Fichier Excel (*.xls), *.xls")
If AdrEnregistr <> "Non" Then ActiveWorkbook.SaveAs AdrEnregistr
End Sub
 
Re : VBA Enregistrer sous

Bonjour Pierrot,

la fenêtre s'ouvre bien sur le chemin spécifié mais lorsque j'enregistre mon classeur je ne le retrouve pas ensuite. A-t-il été réellement enregistré ?

Edit : bonjour GuillaumA, ton code produit une erreur 1004

A+, Matt.
 
Dernière édition:
Re : VBA Enregistrer sous

Si tu ne veux pas définir de nom spécifique pour ton fichier, mais juste le chemin,

Remplace:
Code:
AdrEnregistr = Application.GetSaveAsFilename(InitialFileName:= chemin & "\" & NOMFICHIER, Filefilter:="Fichier Excel (*.xls), *.xls")


Par:
Code:
AdrEnregistr = Application.GetSaveAsFilename(InitialFileName:= chemin, Filefilter:="Fichier Excel (*.xls), *.xls")


Et pour cibler un dossier spécifique:
Remplace:
Code:
.specialFolders("Desktop")

Par:
Code:
.GetFolder(specdossier)
 
Dernière édition:
Re : VBA Enregistrer sous

Merci GuillaumA,

Edit : car j'avais pas vu tout ton message.

Je dois remplacer specialfolders ici :chemin = CreateObject("WScript.Shell").specialfolders("C:\...) par getfolder ? Car get folder n'ai pas reconnu par le VBA.

A+, Matt.
 
Dernière édition:
Re : VBA Enregistrer sous

Au fait Matt51100, 51200 c'est ton code postal?
Si c'est le cas le mien était 51200 (Epernay ma ville de naissance).
Et comme d'habitude avec Pierrot93 j'ai encore appris quelque chose aujourd'hui.

Bon Week End.
 
- 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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…