enregistrement au format pdf

  • Initiateur de la discussion Initiateur de la discussion Jacques25
  • 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 !

Jacques25

XLDnaute Occasionnel
Bonjour à tous,

j'aurais besoin d'un ptit coup de main pour automatiser une impression. J'ai un fichier avec une zone d'impression déjà définie que je souhaiterai mettre au format pdf dans un fichier bien précis.
En manuel je fais de la sorte :
Fichier\imprimer
choix de l'imprimante : pdfmail
je modifie les propriétés pour passer la résolution à 300dpi (présence de photos)
Ok
Ok
seule Option cochée : Enregistrer le document pdf dans un fichier
Là j'indique le chemin d'enregistrement

J'ai essayé l'enregistrement de macro en auto et bien sur je n'arrive à rien, donc si vous avez une petite idée du comment faire je suis preneu.

Merci de votre aide
Jacques
 
Re : enregistrement au format pdf

Bonjour Jacques,

Tu peux tenter avec ce module:

Code:
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
                              (ByVal hwnd As Long, ByVal lpOperation As String, _
                               ByVal lpFile As String, ByVal lpParameters As String, _
                               ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Sub CONVERSION_EN_PDF()

Dim CREATION_PDF As PDFCreator.clsPDFCreator
Dim NOM_PDF As String
Dim Destination As String

NOM_PDF = "MACHIN.pdf" ' Ou autre
Destination = ThisWorkbook.Path 'Ou autre.
Set CREATION_PDF = New PDFCreator.clsPDFCreator

With CREATION_PDF
'La condition ci-dessous empêche l'ouverture de la boite de dialogue de PDFCreator
If .cStart("/NoProcessingAtStartup") = False Then
MsgBox "Can't initialize PDFCreator.", vbCritical + _
vbOKOnly, "PrtPDFCreator"
Exit Sub
End If
.cOption("UseAutosave") = 1
.cOption("UseAutosaveDirectory") = 1
.cOption("AutosaveDirectory") = Destination
.cOption("AutosaveFilename") = NOM_PDF
.cOption("AutosaveFormat") = 0 ' 0 = PDF
.cClearCache
End With
'Convertit le document en PDF
ActiveSheet.PrintOut copies:=1, ActivePrinter:="PDFCreator"
'Attend que le document soit entré dans la file de Création
Do Until CREATION_PDF.cCountOfPrintjobs = 1
DoEvents
Loop
CREATION_PDF.cPrinterStop = False
'Attend que la Création du document PDF soit terminée
Do Until CREATION_PDF.cCountOfPrintjobs = 0
DoEvents
Loop
CREATION_PDF.cClose
Set CREATION_PDF = Nothing
End Sub

Cependant, il te faut avoir PDFCreator, ou le télécharger (C'est gratos)
Et par la suite ne pas oublier de cocher sa référence dans ton projet.
A noter qu'ici il ne s'agit que de la conversion d'une feuille Excel.

A toi d'adapter

Tu me dis!

Amicalement.

Yann
 
Re : enregistrement au format pdf

Bonjour le fil 🙂,
Tu est dur, Yann, de proposer une solution gratuite alors que notre ami a une solution à 99€ la première licence 😛...
A priori, d'après leur site, il y a un PDFmail 2010 SDK pour pouvoir développer l'automatisation, mais le lien vers le PDF de documentation abouti en Erreur 404 😡...
Autrement, une solution simple, aller configurer l'imprimante PDFMail comme imprimante par défaut. Régler sa configuration à 300dpi par défaut (bizarre, c'est des PDF d'impression qu'il te faut ? 😀).
Ensuite, un simple ActiveSheet.PrintOut te fera ton fichier PDF, mais il te réclamera le nom de fichier à utiliser.
Bonne nuit 😎
 
Re : enregistrement au format pdf

Merci Yann pour ta réponse,

Je vais essayer ça dès lundi, le ptit hic c'est que je ne dispose que de pdfmail (raison professionnelle) si qqun connait une adaptation pour pdf mail je reste preneur.
Merci déjà pour ce ptit code.

Bon Dimanche à tous
 
Re : enregistrement au format pdf

JNP merci pour ces gentilles petites réflexions, comme je l'ai dit sur le post d'avant je ne fais pas trop comme je veux...
Et oui j'ai un format photo pour une utilisation ultérieure, sans ça je ne peux diffuser mon doc...
Quant à l'imprimante par défaut, c'est sympa d'y avoir pensé mais on est plusieurs sur le fichier, et j'utilise l'imprimante aussi pour d'autre appli, le but était juste de savoir si je pouvais automatiser cette opération que je fais régulièrement (le but je crois d'une macro...)

Bonne nuit
 
Re : enregistrement au format pdf

Re 🙂,
Le problème est d'avoir la documentation de l'imprimante pour pouvoir la gérer en automatique...
Le choix de l'imprimante peut être fait par macro, mais il y a le fameux problème du NetWork qui dépends de l'ordre d'installation des imprimantes sur le poste,
Bon courage 😎
 
Re : enregistrement au format pdf

Bonjour Jacques25, JNP et à ceux qui passeront par là.

Sauf d'avoir une Direction dictatoriale, tu peux télécharger ici PDFCreator.

Browse PDFCreator Files on SourceForge.net

J'étais en train de tenter l'adaptation de mon code pour une image,
mais j'ai, pour l'instant abandonné, puisque je ne pige pas trop la nécessité
de transcrire celle-ci en PDF.

Ainsi que le laisse entendre JNP.

Pour t'aider dans la petite mesure de mes moyens, il serait bien
que tu expliques clairement le pourquoi de cette obligation.

A quand tu le voudras.

Yann
 
Re : enregistrement au format pdf

Re 🙂,
J'étais en train de tenter l'adaptation de mon code pour une image,
mais j'ai, pour l'instant abandonné, puisque je ne pige pas trop la nécessité
de transcrire celle-ci en PDF.
Ainsi que le laisse entendre JNP.
Non, ma remarque était dans le sens : Tiens, 300dpi, c'est une demande d'un imprimeur 😉.
Par contre, je ne suis pas sûr que PDFCreator sache gérer la définition des images, mais bon, personnellement, je gère avec AcrobatPro, ce qui n'est pas le même combat 🙄...
Bon courage 😎
 
Re : enregistrement au format pdf

Bonsoir Yann, JNP, le forum

Pour vous répondre, le choix des 300 dpi je le fais quand j'ai plusieurs photo sur mon doc sinon le document ne s'enregistre pas (je n'ai pas la moindre idée du pourquoi, je sais juste que ça marche comme ça)
Concernant l'utilisation de PDFmail, c'est un choix global pour éviter d'avoir tout en n'importe quoi de télécharger sur les différents postes
Je ne pensai pas que ce serait si compliqué, j'essayerai tout de même avec le code de Yann demain.

Merci à vous 2 et bonne soirée
 
Re : enregistrement au format pdf

Re 🙂,
En principe, le nombre de dpi dépends de l'utilisation que tu souhaites faire de ton PDF.
72 dpi affichage web (écran) taille tel
200 dpi impression presse
300 dpi impression imprimerie
etc.
Bon courage 😎
 
- 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

Discussions similaires

N
Réponses
20
Affichages
6 K
EhGrandMachin
E
Retour