ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Setting printing properties (https://www.excelbanter.com/excel-programming/366670-setting-printing-properties.html)

Carl

Setting printing properties
 
I just purchased a new Laserjet 1320tn printer and would like to know if
anyone knows how to access the printer properties thru VBA. I run various
VBA macros when printing reports from several worksheets and would like to be
able to turn duplex printing on and/or off as well as select which tray I'm
pringing from.

All I can find in the VBA help is the ActivePrinter which I use to select
the printer I want to use and ActiveWindow.SelectedSheets.Printout to set
some options (copies, collate, etc.).

Any help would be greatly apprecitaed.

Carl White

Tom Ogilvy

Setting printing properties
 
VB provides a printer object, but VBA does not, so you are pretty much stuck
with 3 options

1) Sendkeys (simulate keystroking a choice in the print setup dialog)
2) Create another instance of the printer with the proper settings in the
windows control panel, and select that.
3) Using the Window API to interact with the printer

This article will give some insights into the 3rd method:
http://msdn.microsoft.com/archive/en...softAccess.asp

The article is about access, but the API portions of the article are the
same.

Here are some other related articles:
http://support.microsoft.com/default...b;en-us;230743
HOWTO: Set Duplex Printing for Word Automation

http://support.microsoft.com/default...b;en-us;190218
HOWTO: Retrieve Settings From a Printer Driver

http://support.microsoft.com/default...b;en-us;180645
FIX: Cannot Change Page Settings During Print Job

http://support.microsoft.com/default...b;en-us;266767
HOWTO: Set Which Printer Is the System Default Printer

--
Regards,
Tom Ogilvy



"Carl" wrote in message
...
I just purchased a new Laserjet 1320tn printer and would like to know if
anyone knows how to access the printer properties thru VBA. I run various
VBA macros when printing reports from several worksheets and would like to
be
able to turn duplex printing on and/or off as well as select which tray
I'm
pringing from.

All I can find in the VBA help is the ActivePrinter which I use to select
the printer I want to use and ActiveWindow.SelectedSheets.Printout to set
some options (copies, collate, etc.).

Any help would be greatly apprecitaed.

Carl White




Carl

Setting printing properties
 
Tom -

Thanks for the links to the articles. I'll read through them and pull out
what I can use. Thanks for the help.

Carl White

"Tom Ogilvy" wrote:

VB provides a printer object, but VBA does not, so you are pretty much stuck
with 3 options

1) Sendkeys (simulate keystroking a choice in the print setup dialog)
2) Create another instance of the printer with the proper settings in the
windows control panel, and select that.
3) Using the Window API to interact with the printer

This article will give some insights into the 3rd method:
http://msdn.microsoft.com/archive/en...softAccess.asp

The article is about access, but the API portions of the article are the
same.

Here are some other related articles:
http://support.microsoft.com/default...b;en-us;230743
HOWTO: Set Duplex Printing for Word Automation

http://support.microsoft.com/default...b;en-us;190218
HOWTO: Retrieve Settings From a Printer Driver

http://support.microsoft.com/default...b;en-us;180645
FIX: Cannot Change Page Settings During Print Job

http://support.microsoft.com/default...b;en-us;266767
HOWTO: Set Which Printer Is the System Default Printer

--
Regards,
Tom Ogilvy



"Carl" wrote in message
...
I just purchased a new Laserjet 1320tn printer and would like to know if
anyone knows how to access the printer properties thru VBA. I run various
VBA macros when printing reports from several worksheets and would like to
be
able to turn duplex printing on and/or off as well as select which tray
I'm
pringing from.

All I can find in the VBA help is the ActivePrinter which I use to select
the printer I want to use and ActiveWindow.SelectedSheets.Printout to set
some options (copies, collate, etc.).

Any help would be greatly apprecitaed.

Carl White






All times are GMT +1. The time now is 07:30 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com