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
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
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
    Capture3.PNG
    1.6 KB · Affichages: 15

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
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 ?
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
    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.
 

Statistiques des forums

Discussions
312 098
Messages
2 085 265
Membres
102 844
dernier inscrit
atori2