Bienvenue! Identification Créer un nouveau profil

Recherche avancée

impression en pdf publipostage

14/10/07 19:08
Bonjour,

j'essaide creer un fusion publipostage Access Word et que le document creer sous word m'imprime chaque page dans un document pdf.

Après plusieurs essai, je pense le faire en 2 fonctions distinctes, car si je définie l'imprimante dans la fonction de publipostage cela ne prends pas en compte l'imprimante voulue. De plus, en faisant une fonction sur un fichier word de 6 pages, j'ai réussi à généré un fichier pdf par page (la 2ieme fonction)

La 1ere fonction creer le publipostage, depuis vba je lance une requete qui rempli une table et ensuite je lance la fonction suivante, qui créer le publipotage dans un nouveau document

Function Publipostage_avis_de_controle()

Dim wdapp As Word.Application

Set wdapp = CreateObject("Word.Application")
With wdapp
.Visible = True
.Documents.Open "E:\courrier\Avis.doc"
.ActiveDocument.MailMerge.Destination = wdSendToNewDocument
.ActiveDocument.MailMerge.Execute
End With
End Function

Cela me génère un nouveau document

ensuite j'aimerai lancer la fonction suivante afin de générer les pdf
Function impression_pdf()

Dim wdapp As Word.Application

Set wdapp = CreateObject("Word.Application")
wdapp.ActivePrinter = ("PDFCreator")

Set myPDFCreator = New PDFCreator.clsPDFCreator

With myPDFCreator
.cDefaultPrinter = "PDFCreator"
.cClearCache
End With
n = 6
For i = 1 To n Step 1

wdapp.PrintOut Filename:="", Copies:=1, Range:=wdPrintCurrentPage
wdapp.Application.Browser.Next

Next
For i = 1 To n - 1
wdapp.Application.Browser.Previous
Next
wdapp.PrintOut Filename:="", Copies:=1, Range:=wdPrintCurrentPage

myPDFCreator.cPrinterStop = False

myPDFCreator.cClearCache
DoEvents
Do Until myPDFCreator.cCountOfPrintjobs = 0
DoEvents
Loop
myPDFCreator.cClose
Set myPDFCreator = Nothing

wdapp.ActivePrinter = "Brother HL-2070N series"
'wdapp.ActiveDocument.Close
'wdapp.Quit

Set wdapp = Nothing

'End With

'Set wdapp = Nothing

End Function


A partir de n=6, c'est afin de générer un pdf par page, je ferais une boucle sur ne nombre d'enregistrement de la table qui rempli les courriers.

le souci c'est que si je lance la premiere fonction cela créer bien un nouveau document, or si je lance les 2 à la suite cela ne me génère pas le document fusionner.

Cela affiche Erreur d'execution '5631'
Impossible de fusionner le document principal avec la source de données:les enregistrements étaient tous vides ou aucun enregistrement ne correspondait à vos options de requêtes.

J'aimerai savoir comment dans la 2ieme fonction prendre le controle du document word créer par le publipostage afin de générer les pdf
Apres je devrais trouver comment mettre en nom de fichier, certains parametres récuperer dans la table qui génère le document.

merci de votre aide
SujetAuteurEnvoyé le

impression en pdf publipostage

andarius4014/10/07 19:08

Re: impression en pdf publipostage

andarius4016/10/07 11:08

Seuls les utilisateurs enregistrés peuvent poster des messages dans ce forum.

Cliquez ici pour vous connecter