ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   ThisWorkbook BeforePrint (https://www.excelbanter.com/excel-programming/331454-thisworkbook-beforeprint.html)

Simon Shaw

ThisWorkbook BeforePrint
 
Hi,

I need to run code after a print job.
I am using
Private Sub Workbook_BeforePrint(Cancel As Boolean)
in ThisWorkbook to execute code prior to printing,
but then I want to run code after printing.

Thanks
Simon

STEVE BELL

ThisWorkbook BeforePrint
 
You might look into canceling the print at the beginning of the event.
Than have the code initiate the print (in the code).
Than continue your code to what you want to happen after the print.

--
steveB

Remove "AYN" from email to respond
"Simon Shaw" <simonATsimonstoolsDOTcom wrote in message
...
Hi,

I need to run code after a print job.
I am using
Private Sub Workbook_BeforePrint(Cancel As Boolean)
in ThisWorkbook to execute code prior to printing,
but then I want to run code after printing.

Thanks
Simon




JE McGimpsey

ThisWorkbook BeforePrint
 
Make sure that if you do this, you disable events prior to printing and
reenable them afterward, or you'll loop until you run out of stack
space. For instance:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Cancel = True
Application.EnableEvents = False
ActiveSheet.PrintOut
Application.EnableEvents = True
'Your code here
End Sub



In article ,
"Simon Shaw" <simonATsimonstoolsDOTcom wrote:

Hi,

I need to run code after a print job.
I am using
Private Sub Workbook_BeforePrint(Cancel As Boolean)
in ThisWorkbook to execute code prior to printing,
but then I want to run code after printing.

Thanks
Simon


Simon Shaw

ThisWorkbook BeforePrint
 
what if the user was performing a print preview... how do I tell the
difference?

"JE McGimpsey" wrote:

Make sure that if you do this, you disable events prior to printing and
reenable them afterward, or you'll loop until you run out of stack
space. For instance:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Cancel = True
Application.EnableEvents = False
ActiveSheet.PrintOut
Application.EnableEvents = True
'Your code here
End Sub



In article ,
"Simon Shaw" <simonATsimonstoolsDOTcom wrote:

Hi,

I need to run code after a print job.
I am using
Private Sub Workbook_BeforePrint(Cancel As Boolean)
in ThisWorkbook to execute code prior to printing,
but then I want to run code after printing.

Thanks
Simon



JE McGimpsey

ThisWorkbook BeforePrint
 
AFAIK, there's no way to detect the difference between Print and Print
Preview.

However, you can trap the Print Preview command with something like:

CommandBars(1).Controls("File").Controls("Print Preview").OnAction:= _
"MyMacro"

and

Commandbars("Standard").FindControl(id:=109).OnAct ion = "MyMacro"

In article ,
"Simon Shaw" <simonATsimonstoolsDOTcom wrote:

what if the user was performing a print preview... how do I tell the
difference?



All times are GMT +1. The time now is 10:39 AM.

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