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

XL 2019 Création d'une macro d'impression en PDF depuis excel avec incrementation de valeur de 2 cellules.

fabien70290

XLDnaute Nouveau
Bonjour,

Je souhaite creer un bouton d'impression pour imprimer en pdf depuis excel.

Cependant j'ai absolument besoin que le fichier s'enregistre comme suis " Grille Tarifaire GrisClair 2021 R+ak9 DEP+ak15"

Jusqu'a présent j'arrive juste a ouvrir le dossier de destination mais rien ne se passe après sans mon intervention.

C:\Users\Fabien M*FA*O\Desktop\PDF 2021 tarifs\PrixLivréR30

Pas besoin de vous donner mon niveau en VBA il est proche de 0 ^^
 
Dernière édition:
Solution
Re

Donc, normalement, tu as du arrivé à un truc dans ce genre si tu as mis les mains dans le cambouis
VB:
Sub xTest_Nom_PDF()
Dim Nom_PDF$, chemin$
chemin = ThisWorkbook.Path & "\"
With ActiveSheet
Nom_PDF = chemin & PrefN & .[AK9].Text & " DEP " & .[AK15].Text
End With
ActiveSheet.ExportAsFixedFormat _
    Type:=xlTypePDF, _
    Filename:=Nom_PDF, _
    Quality:=xlQualityStandard
End Sub
NB: Dans cet exemple, la feuille active est exportée en PDF dans le répertoire où se trouve le classeur Excel.

Staple1600

XLDnaute Barbatruc
Bonsoir le fil,

=>Fabien M*F*RO
1) Normalement, RGPD oblige, on publie que des données fictives
(même en copie d'écran)

2) Pas besoin de connaitre ton niveau de maitrise de VBA, mais un petit fichier anonymisé (créé juste pour illustrer ton problème) pourrait nous aider à t'aider, non ?
 

Staple1600

XLDnaute Barbatruc
Re

Donc au jugé
(et pour te mettre sur une piste)
VB:
Const PrefN = "Grille Tarifaire GrisClair 2021 R "
Sub Test_Nom_PDF()
Dim Nom_PDF$
With ActiveSheet
Nom_PDF = PrefN & .[AK9].Text & " DEP " & .[AK15].Text
End With
MsgBox Nom_PDF & ".pdf"
End Sub
 

fabien70290

XLDnaute Nouveau
merci pour ta réponse super rapide. j'ai donc testé en remplacant juste Text par Value. ca m'affiche une fenetre comme sur l'image jointe mais ca n'enregistre pas
 

Pièces jointes

  • Capture3.PNG
    1.6 KB · Affichages: 16

Staple1600

XLDnaute Barbatruc
Re

Est-ce que j'ai écrit que cela allait enregistrer?
Non, j'ai écris
(et pour te mettre sur une piste)

Et je t'ai aussi suggéré de joindre un fichier Excel
(et accessoirement de faire le ménage dans ton1er message)
(Pour savoir pourquoi relire la charte du forum, notamment le paragraphe qui parle du RGPD )

NB: Ce 1er bout de code permet de construire le nom du fichier PDF.
Donc pour cette étape, c'est réglé, non ?
 

fabien70290

XLDnaute Nouveau
j'ai viré les pieces jointes merci. Oui cette etape est réglé est ce que je doit l'ajouter a la suite de mon code?
 

Pièces jointes

  • Capture4.PNG
    2.9 KB · Affichages: 11

Staple1600

XLDnaute Barbatruc
Re

J'ai aussi écrit
Dans le vide¸ ce me semble¸ Moi à dit:
Et je t'ai aussi suggéré de joindre un fichier Excel
Et donc en toute logique, tu joins un beau fichier *.PNG


NB: Pour avoir la syntaxe pour un Export en PDF, utilises l'enregistreur de macros (en faisant Fichier/Enregistrer sous/Type:*.pdf)
Et tu auras alors le code VBA correspondant
(qu'il suffira ensuite d'adapter et peaufiner)
 

Staple1600

XLDnaute Barbatruc
Re

Donc, normalement, tu as du arrivé à un truc dans ce genre si tu as mis les mains dans le cambouis
VB:
Sub xTest_Nom_PDF()
Dim Nom_PDF$, chemin$
chemin = ThisWorkbook.Path & "\"
With ActiveSheet
Nom_PDF = chemin & PrefN & .[AK9].Text & " DEP " & .[AK15].Text
End With
ActiveSheet.ExportAsFixedFormat _
    Type:=xlTypePDF, _
    Filename:=Nom_PDF, _
    Quality:=xlQualityStandard
End Sub
NB: Dans cet exemple, la feuille active est exportée en PDF dans le répertoire où se trouve le classeur Excel.
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…