Rechercher : dans
Par :

VBA macro pour convertir en pdf

Dernière réponse le 27 oct 2009 à 23:53:39 Canard007, le 4 jan 2005 à 14:43:38 
 Signaler ce message aux modérateurs

Bonjour à tous,

je recherche une macro vba pour convertir un fichier .xls en pdf.
Mes contraintes, utilisation de PDFMaker et Acrobat Reader 5.0.
Aprés moult recherche sur le net j'ai trouvé ce petit bout de code:

Const ThePath As String = "C:\XLD-PDF\"
Const TheFile As String = "TheTestingFile.PDF"
Sub Test()
CreePDFOnly True
End Sub

Sub CreePDFOnly(Optional PromptForPDFName As Boolean)
If ActiveWorkbook.Saved And Not PromptForPDFName Then
SendKeys "~"
ConvertToPDFA
ElseIf ActiveWorkbook.Saved And PromptForPDFName Then
SendKeys ThePath & TheFile + "~"
ConvertToPDFA
End If
End Sub

Le probléme est que lorsque je "passe" sur la ligne ConvertToPDFA
une message box me dit qu'il n'y a rien à ècrire et excel se bloque (je precise que le workbook actif et bien celui que je veux convertir).
Quelqu'un a il une idée d'ou peut venir cet effet?
Quelqu'un sait il ou je pourrai trouver la doc du PDFmaker.xla?
Ou mieux quelqu'un a t'il une macro qui fonctionne avec PDFMaker?

En vous remerciant d'avance, bonne année à toutes et à tous

Cordialement



COIN!

Meilleures réponses pour « VBA macro pour convertir en pdf » dans :
[PDF] Convertir des PDF en images (JPEG, BMP, GIF, etc...) VoirSi vous avez des documents PDF et que vous voulez les convertir en images (JPEG, GIF, BMP, ou n'importe quel format), de manière à les exploiter, par exemple dans un logiciel d'OCR ou de retouche/création d'images : Note : Cet article présente une...
Publier un fichier PDF sur son site VoirSommaire: Publier un PDF sur son site Conseils Afficher un PDF intégré à une page Téléchargement Convertir un PDF en SWF (Flash) Publier le SWF Astuces et conseils Publier un PDF sur son site Publier un fichier PDF en ligne est en...
Télécharger Free PowerPoint/PPT to Pdf Converter VoirIl est fréquent de convertir les fichiers Word, Excel ou des images au format PDF. Mais il n'est pas très courant de convertir un fichier PowerPoint au format PDF. PowerPoint/PPT to Pdf Converter est une application permettant de convertir facilement...

1

WhiteFang, le 5 jan 2005 à 06:11:07

;-)

En fait, ce que tu dois lire, dans ce bout de code, c'est qu'il fait appel à un programme, ou un appilcation complémentaire ("ConvertToPDFA"), et que celui-ci, apparamment, a un blème....

Un truc qu'il faut savoir, c'est que quand tu installes une appli, celle-ci va inscrire ses bibliothèque de routines dans le registre, en l'occurence, Acrobat Reader... Le blème, c'est que Reader, c'est clair, comme message !! ;-))))) C'est pas Maker !! Acrobat Reader te permet de lire, pas de créer !

Si tu veux disposer des biblio pour créer, il te faut Acrobat TOUT COURT, pas Reader... Où alors tu utilises des trucs qui sortent des chemins Adobe... PDF Maker est une fonction d'Acrobat, pas du Reader qui n'est fait que pour lire... Sinon, il existe aussi des trucs pour créer au format PDF, mais je ne le garanti pas à 100%...

Bref, si tu veux faire des PDF en bonne et due forme, vas voir plutôt du coté d'Acrobat... Et c'est tellement plus simple...


Wild and Free

Répondre à WhiteFang

2

Yannick Rousseau, le 12 déc 2005 à 14:43:11

Bonjour,

J'ai exactement le même soucis, sauf que moi j'ai bien Acrobat 5.0 installé. Et j'ai bien référencé le module PDFMaker.xla dans le fichier contenant la macro... et pourtant ça bloque aussi au moment de la convertion (le processus excel prends 100%).

Que faire ?

Merci

Répondre à Yannick Rousseau

3

blux, le 12 déc 2005 à 15:37:04

Salut,

une soluce, plus simple à gérer (sur un seul poste) est d'installer une imprimante PDF (le site de sebsauvage indique comment faire) et ensuite imprimer en choisissant celle-ci...

Qu'en penses-tu ?
A+ Blux

 "Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"

Répondre à blux

4

Nyarta, le 23 jan 2006 à 16:19:13

J'en pense que l'imprimante PDF est déjà installée, puisqu'elle est livrée avec Acrobat 5, mais je veux que la conversion se fasse automatiquement, sans intervention de l'utilisateur, directement depuis le code VBA. Quant à installer une autre imprimante PDF, d'une part, j'ai déjà celle d'Acrobat, ensuite je n'ai pas le droit d'installer autre chose sur mon poste dans ma boîte et surtout, mon application doit être portable dans ma boîte donc je dois utiliser Acrobat.

Répondre à Nyarta

5

vince, le 26 jui 2006 à 03:50:00

Bj,
J'ai eu le meme pb.
Simplement il ne faut pas oublier de rajouter les librairies correspondantes dans ta feuille xl.

Pour cela tu vas dans Ms VBA et tu ouvres "OUTILS / PREFERENCES" et la tu rajoutes "PDFMaker" ou "Distiller " ..

Slts
Vince

Répondre à vince

6

snejena, le 18 aoû 2006 à 15:03:43

En mettrant run.application("convertoPDF") ça marche

Répondre à snejena

7

filoulebauju, le 2 avr 2008 à 16:22:42

IL Y A ENCORE PLUS SIMPLE.

Tu enregistre une macro et pendant l'enregistrement, tu effectue ce que tu veux que ta macro fasse.

Répondre à filoulebauju

8

lallo, le 25 avr 2008 à 21:46:35

Bonjour,

je cherche une macro qui me permettrait de créer, à partir d1 fichier excel, un pdf (Pdf Creator),
Le nom du fichier pdf serait une concaténation d'une cellule A1;"-";B1 de la feuille imprimée.
Le fichier pdf serait à envoyer toujours dans le même repertoire ex : "dossier1"

Je souhaite que le fichier pdf reste ouvert pour visualisation et soit fermé manuellement.

Est-ce possible ?

Merci d'avance pour toute indication

Répondre à lallo

9

Ed, le 10 jui 2008 à 12:05:30

Voici mon problème

j'ai un dossier d'environ 400pdf qui portent déaj un nom

mon but est grace à une macro de chager le nom de ces 400 fichier automatiquement en fonction de 2 variables qui se trouve dans mon classeur excel

par ex

un fichier se nomme "\1234_docu.pdf"
et moi j'aimerais le renommer "1234_document.pdf"

1234 et document étant variables pour mes 400 fichiers?

Qu'en pensez vous??

Répondre à Ed

10

 Loulou, le 27 oct 2009 à 23:53:39
  • +1

Pour ceux qui comme moi ont galéré avant de trouver la réponse, voilà un code qui fonctionne avec PdfCreator:

Sub ToPdf()

Set pdfjob = CreateObject("PDFCreator.clsPDFCreator")
NomExcel = ThisWorkbook.Name
NomPdf = Left(NomExcel, Len(NomExcel) - 4) & ".pdf"
With pdfjob
If .cstart("/NoProcessingAtStartup") = False Then
MsgBox "Can't initialize PDFCreator.", vbCritical + vbOKOnly, "PrtPDFCreator"
Exit Sub
End If
.cOption("UseAutosave") = 1
.cOption("UseAutisaveDirectory") = 1
.cOption("AutosaveDirectory") = ThisWorkbook.Path
.cOption("AutosaveFilename") = NomPdf
.cOption("AutosaveFormat") = 0
.cClearCache
End With
ThisWorkbook.PrintOut copies:=1, ActivePrinter:="PDFCreator"
Do Until pdfjob.cCountOfPrintjobs = 1
DoEvents
Loop
pdfjob.cPrinterStop = False
Do Until pdfjob.cCountOfPrintjobs = 0
DoEvents
Loop
With pdfjob
.cDefaultprinter = DefaultPrinter
.cClearCache
.cClose
End With
Set pdfjob = Nothing
End Sub

Répondre à Loulou