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

Macro impression pdf

  • Initiateur de la discussion Initiateur de la discussion dilank
  • Date de début Date de début

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 !

D

dilank

Guest
Bonjour,

J'ai fait un fichier en pièce jointe...

J'ai fait une macro simple pour imprimer toutes les personnes sous un code 14001 , 14002 .... pour la feuille resultat..

je voudrais (à la place que cela s'imprime) que ça enregistre toutes les personnes dans un seul pdf...

j'ai pdf architect 3 creator dessus et excel 2013.

Merci de votre aide.
 

Pièces jointes

Re : Macro impression pdf

Bonsour®
EXCEL sait exporter directement en Pdf

on pourra avantageusement simplifier le code ci-dessous par une boucle sur les différents N° de compte souhaité
Nb : la plage d'impression doit être définie
VB:
Sub Macro1()
    Range("G4") = "14001"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
                     Filename:=ThisWorkbook.Path & "\" & Range("G4") & ".pdf", _
                     Quality:=xlQualityStandard, _
                     IncludeDocProperties:=True, _
                     IgnorePrintAreas:=False, _
                     OpenAfterPublish:=False 'True
    Range("G4") = "14002"
   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
                     Filename:=ThisWorkbook.Path & "\" & Range("G4") & ".pdf", _
                     Quality:=xlQualityStandard, _
                     IncludeDocProperties:=True, _
                     IgnorePrintAreas:=False, _
                     OpenAfterPublish:=False
    Range("G4") = "14003"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
                     Filename:=ThisWorkbook.Path & "\" & Range("G4") & ".pdf", _
                     Quality:=xlQualityStandard, _
                     IncludeDocProperties:=True, _
                     IgnorePrintAreas:=False, _
                     OpenAfterPublish:=False
    Range("G4") = "14004"
   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
                     Filename:=ThisWorkbook.Path & "\" & Range("G4") & ".pdf", _
                     Quality:=xlQualityStandard, _
                     IncludeDocProperties:=True, _
                     IgnorePrintAreas:=False, _
                     OpenAfterPublish:=False
    Range("G4") = "14005"
   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
                     Filename:=ThisWorkbook.Path & "\" & Range("G4") & ".pdf", _
                     Quality:=xlQualityStandard, _
                     IncludeDocProperties:=True, _
                     IgnorePrintAreas:=False, _
                     OpenAfterPublish:=False
End Sub
 
Re : Macro impression pdf

Bonjour à tous

dilank
j'ai lu tout le fil, j'ai retenu ceci.
Nb : la plage d'impression doit être définie
Est-ce bien le cas chez toi?

EDITION: Et donc avec une boucle, je confirme que le code soumis par Modeste Geedee n'est pas dans l'incapacité de fonctionner correctement 😉
Code:
Sub Macro1B()
Dim i, sPath$, f As Worksheet
sPath = "C:\Temp\" 'adapter ici le chemin
Set f = Sheets([IMPRESSION].Parent.Name)
For i = 14001 To 14005
f.[G4] = i
[IMPRESSION].ExportAsFixedFormat Type:=xlTypePDF, _
                     Filename:=sPath & f.[G4] & ".pdf", _
                     Quality:=xlQualityStandard, _
                     IncludeDocProperties:=True, _
                     IgnorePrintAreas:=False, _
                    OpenAfterPublish:=False 'True
Next
End Sub
NB: Ici [IMPRESSION] correspond à une plage de cellule nommées.
(voir le Gestionnaire de Noms)
testé avec Excel 2013.
 
Dernière édition:
Re : Macro impression pdf

Bonsour® JM

je pense que le demandeur à des difficultés à préciser ces besoins, ou bien que nous n'interprétions pas correctement ceux-ci...

je voudrais (à la place que cela s'imprime) que ça enregistre toutes les personnes dans un seul pdf...

dans cette demande je comprends que les résultats ne soit pas imprimés, mais soient contenus dans un seul pdf.. ??

ma réponse concernait la création d'un pdf par personne (sans impression)
impression facultative à la demande en modifiant ce paramètre
code....
, OpenAfterPublish:=True

je ne connais pas la syntaxe VBA, pour concaténer les pdf... 🙁
 
Re : Macro impression pdf

Bonjour Modeste Geedee


je ne connais pas la syntaxe VBA, pour concaténer les pdf...
En cherchant un peu dans les scritps VBS (donc transposable en VBA), j'ai retenu cela:
CreateObject("AcroExch.PDDoc")
(Il y a pas mal d'exemples sur me web anglophone)
(Voir aussi les travaux de kiki29 (membre d'XLD))


Mais attendons les précisions du demandeur avant de merger du PDF

 
Dernière édition:
Dernière édition:
Re : Macro impression pdf

Bonsoir à tous

Quand on parle du loup 😉

kiki29
Sur le wen anglophone, j'ai lu qu'on pouvait utiliser
CreateObject("AcroExch.PDDoc")
avec juste Acrobat Reader installé.
Tu confirmes ou infirmes cela ?
 
Re : Macro impression pdf

Modeste geedee dans la PJ que tu as mise c'est toi qui a écrit "14001" "14002" .. ? Par contre je n'ai peut être pas le bon Acrobat.. ?

car quand j'utilise la macro je vois bien les personnes changer... mais pas de pdf.... ou alors cela s'enregistre quelque part.. ??
 
Dernière modification par un modérateur:
Re : Macro impression pdf

Oui Modeste geedee je ne veux pas imprimer mais bien enregistrer directement en pdf desole pour la mauvaise precision...

Pour autant je souhaite modifier ma demande...

Le mieux serait (si c'est possible) que :

1-ça enregistre 1 pdf pour 1 résultat
2-que ça envoie automatiquement le résultat par mail (avec une boite gmail) par contre ce système je ne sais pas si c'est réalisable.
 
Dernière modification par un modérateur:
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

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