Fonction "enregistrer sous"+ nom automatique + PDF
Bonjour,
Après plusieurs heures de recherche sur le net, je me permets de demander votre aide.
En effet, je voudrais faire une macro qui, quand je la lance, enregistre un onglet spécifique en PDF et récupère la valeur d'une cellule pour le nom.
Le problème, c'est que je voudrais qu'il y ait une fenêtre "enregistrer sous" qui s'ouvre.
Voici le code que j'ai fait:
Private Sub CommandButton3_Click()
Dim fichier As String, Variable As String
Variable = Sheets("Génération DMC").Range("C1")
fichier = "Etiquette" & "_" & Variable & ".pdf"
Sheets("Etiquette").Select
ChDir "C:\Users\JEANEUDE\Desktop\Etiquettes composants reconditionnés"
Sheets("Etiquette").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\JEANEUDE\Desktop\Etiquettes composants reconditionnés\" & fichier _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=FalseJ'ai du mettre par défaut un chemin d'accès. Mais mon programme va être utilisé sur plusieurs ordinateur. Donc je veux laisser le choix à l'utilisateur de changer le répertoire et donc d'avoir la fenêtre "enregistrer sous" qui s'ouvre avec le nom déjà rempli avec mes variables.
Merci d'avance,
Bonne fin de journée
Bonjour Test0121, et bienvenue sur le Forum,
Je te met en fichier joint un Excel que je n'ai pas crée mais seulement légèrement modifié pour qu'il puisse répondre à tes besoins.
Une fenêtre s'ouvre et tu peux choisir un chemin parmi tes dossiers, qui ensuite s’insèrera en cellule [B2] de la Feuil1 mais aussi dans la variable "Enregistrersous"
A toi de finir d'adapter ce fichier au tien
Bon courage !
Salut Juice,
Merci pour la réponse. Par contre, je ne vois pas trop en quoi ton fichier répond à mon problème.
J'ai surement du mal m'exprimer.
Lorsque l'utilisateur clique sur mon bouton X,
Je veux que ça enregistre l'onglet Z en PDF
Je veux aussi qu'une fenêtre s'ouvre pour qu'il puisse choisir son dossier de destination et que le nom du PDF soit généré automatiquement.
Tout ce qui est décrit au dessus j'ai réussi à le faire sauf à faire ouvrir la page pour "enregistrer sous".
Merci
Cdlt
Rebonjour,
J'ai trouvé seul ma solution.
voici le code que j'ai réalisé:
Private Sub CommandButton3_Click()
Dim Fichier As String
Fichier = "Etiquette - " & Sheets("Génération DMC").Range("C1") ' Le nom du fichier sera par défaut Etiquette- puis les valeurs de ma cellule C1, onglet Génération DMC
x = Application.GetSaveAsFilename(InitialFileName:=Fichier, _ 'enregistrement en PDF
FileFilter:="PDF files, *.pdf", _
Title:="Save PDF File")
If TypeName(x) = "Boolean" Then
Else
ThisWorkbook.Sheets("Etiquette").ExportAsFixedFormat Type:=xlTypePDF, _ 'Enregistre en PDF l'onglet Etiquette
Filename:=x, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End If
End Sub