Solved

How to jump Cute pdf writer dialog print box with VBA.

Posted on 2008-06-21
9
4,473 Views
Last Modified: 2012-06-27
Hi I am actually trying to add a step in a MS Access-Word mail merge, that allows me to create the equivalent file in .pdf
Unfortunately I cannot manage to avoid tiping ENTER at each time the document goes to print.
I have tried SenKeys method, but with no result.
I was thinking to something like:
Dim PrintDialogBox as application
PrintDialogBox.visible=false
With PrintDialogBox
SendKeys ENTER
End WIth
to repeat after each printing steps.
Can you suggest please? Thanx.
0
Comment
Question by:Sar1973
  • 5
  • 4
9 Comments
 
LVL 76

Expert Comment

by:GrahamSkan
ID: 21838138
Use the PrintOut Method


   Dim wdApp as Word.Application

   '...

    wdApp.ActivePrinter = "CutePDF Writer"

    wdApp.ActiveDocument.PrintOut OutPutFileName:="MyFile.pdf"

Open in new window

0
 
LVL 9

Author Comment

by:Sar1973
ID: 21838744
Now it works, since it does not ask to Save the file with the dialog box, but it creates a huge .pdf file that cannot be opened by Adobe since appears to be corrupted.
I think that it depends on my freeware version of Cute; if you know a cheap pdf writer that:
1) can be configurated as a virtual printer
2) works with your code
3) (eventually) is useful also to convert .pdf to .jpg
you're welcome.
0
 
LVL 76

Expert Comment

by:GrahamSkan
ID: 21838834
I have never created a pdf file. I just know how to programme printing to a file and understand that most pdf creators work like that. I downloaded PDF995 in case I needed it to answer your previous question, but I haven't had time to try it. It has been recommended several times in postings in the Word. The site claims that it can convert to pdf to jpeg

http://www.pdf995.com/
0
 
LVL 9

Author Comment

by:Sar1973
ID: 21841914
Very nice: it performs SendKeys command, but I have no idea on:
1) making invisible the dialog box (I cannot actually perform in creating the application)
2) use the wdApp.ActiveDocument.PrintOut OutPutFileName method: I get as well a corrupted file and I'm not sure that it depends on the freeware.
0
Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

 
LVL 76

Expert Comment

by:GrahamSkan
ID: 21844214
1. Which dialog box?
2. Does creating the pdf from the document work if you do it manually?
0
 
LVL 9

Author Comment

by:Sar1973
ID: 21844576
When you launch a print with pdf995 (but also with others such as Cute) a print dialog box appeaars asking you to confirm file name and path. If I use the SendKeys method there is no problem, but I 'd prefer to:
1)identify that dialog box
2)give a command line that allows my routine to jump to that dialog box
3)use the sendkeys method
Can you post some code for that? Thanx.
0
 
LVL 76

Expert Comment

by:GrahamSkan
ID: 21844928
I have now created a PDF file (my first) using pdf995 . It seems to act differently from the Adobe writer which I think can use the PrintOut method to a file. Perhaps that is why pdf995 is free.

I don't use Sendkeys. You may have to use the FindWindow API to get the handle of the dialogue.
0
 
LVL 9

Author Comment

by:Sar1973
ID: 21845205
I don't have any function like that in my MS Access 2000 library.
0
 
LVL 76

Accepted Solution

by:
GrahamSkan earned 75 total points
ID: 21845247
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

I’ve seen a number of people looking for examples of how to access web services from VB6.  I’ve been using a test harness I built in VB6 (using many resources I found online) that I use for small projects to work out how to communicate with web serv…
Have you ever wanted to restrict the users input in a textbox to numbers, and while doing that make sure that they can't 'cheat' by pasting in non-numeric text? Of course you can do that with code you write yourself but it's tedious and error-prone …
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

708 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now