Créer un code pour enregistrer en PDF

Bonjour, j'ai créer un code pour enregistrer a l'aide d'un bouton en fichier PDF dans un dossier sur mon bureau, cela fonctionne mais a chaque fois que j'appuie sur le bouton il me l'enregistre à nouveau sous le même nom et ce que je voudrais c'est qu'il me le renomme à chaque fois sous un nom différent, par exemple en prenant le nom de ma cellule (G9) qui elle change a chaque fois car c'est le numéro de facture de mon classeur. Ou tout simplement une fenêtre box qui apparait pour que je puissent donner un nouveau nom de fichier PDF.

En attente de réponse merci

Bonjour,

Quel est votre code ?

Bonjour à tous!

ecluse105 ,comme ceci enregistré sur mon bureau

"C:\Users\...\Desktop\" & Cells(9, 7).Value & ".pdf"

voici le code que je me sers pour faire un classement j'ai essayé avec la valeur de la cellule "A2" et ça fonctionne

la plage sélectionnée "O1:U33" que j'enregistre en PDF ça devrait être la même chose pour toi avec une facture

Sub Classement_PDF()
Range("O1:U33").Select
        Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
       "C:\Users\...\Desktop\" & Cells(2, 1).Value & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        False
Range("A1").Select
End Sub

Bonne journée!

Verifier ce code

Sub testpdf()
Dim liensversFichier As Variant
Dim InitialName As String
InitialName = "NomDuPDF"

liensversFichier = Application.GetSaveAsFilename(InitialFileName:=InitialName, _
    fileFilter:="Excel Files (*.pdf), *.pdf")
'change "info"
Worksheets("Info").ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=liensversFichier, _
        Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, _
        OpenAfterPublish:=True
End Sub

Une autre solution que celle de Nordik_Nation avec une boite de dialogue pour récupérer le répertoire :

Sub ImprimerEnPdf()

Dim Fd As FileDialog
Dim LienversFichier As Variant

    LienversFichier = ""
    Set Fd = Application.FileDialog(msoFileDialogFolderPicker)
    With Fd
         If .Show = -1 Then
            LienversFichier = .SelectedItems(1)
         End If
   End With
   Set Fd = Nothing

   If LienversFichier = "" Then Exit Sub

   LienversFichier = LienversFichier & "\Devis " & Range("G9") & ".pdf"
   Sheets("Info").ExportAsFixedFormat Type:=xlTypePDF, Filename:=LienversFichier, OpenAfterPublish:=True

End Sub

Bonjour, j'ai tester les code mais j'ai des erreurs, je vous est joint un fichier de test excel. Pour explication je voudrais que lorsque j'appuie sur un bouton une boite de dialogue apparait pour sélectionner un répertoire de mon PC et enregistrer mon pdf avec comme nom le contenu de la cellule (H9) qui lui peut changer celons que l'on appuie sur le bouton.

Je vous joint mon fichier de test Excel

En attente de réponse merci.

3test-code.xlsm (20.07 Ko)

Mon code ouvre une boite de dialogue qui vous permet de choisir le répertoire. Il vous suffit ensuite de remplacer Devis par Facture et la référence G9 par H9.

Eric j'ai bien fait ce que vous m'avez dit, mais quand je lance en exécution le code il m'ouvre bien la boite de dialogue dans lequel je sélectionne mon dossier de destination et que je valide il m'affiche une boite de dialogue comme quoi qu'il y a une erreur comme ma capture d'écran l'indique.

2test-code.xlsm (21.20 Ko)
imagecode

Il faut changer le nom de l'onglet.

J'imagine que le formatage de l'onglet est correct.

Sub ImprimerEnPdf()

Dim Fd As FileDialog
Dim LienversFichier As Variant

    LienversFichier = ""
    Set Fd = Application.FileDialog(msoFileDialogFolderPicker)
    With Fd
         If .Show = -1 Then
            LienversFichier = .SelectedItems(1)
         End If
   End With
   Set Fd = Nothing

   If LienversFichier = "" Then Exit Sub

   LienversFichier = LienversFichier & "\Facture " & Range("H9") & ".pdf"
   Sheets("Feuil1").ExportAsFixedFormat Type:=xlTypePDF, Filename:=LienversFichier, OpenAfterPublish:=True

End Sub

Grand merci Eric tout est OK, bonne soirée à vous.

Rechercher des sujets similaires à "creer code enregistrer pdf"