Printing Macro

D

dhstein

I want to print a report from a macro. I recorded a macro and got this:
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = ""
.RightFooter = ""
.LeftMargin = Application.InchesToPoints(0.7)
.RightMargin = Application.InchesToPoints(0.7)
.TopMargin = Application.InchesToPoints(0.75)
.BottomMargin = Application.InchesToPoints(0.75)
.HeaderMargin = Application.InchesToPoints(0.3)
.FooterMargin = Application.InchesToPoints(0.3)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = 600
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperLetter
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 50
.PrintErrors = xlPrintErrorsDisplayed
.OddAndEvenPagesHeaderFooter = False
.DifferentFirstPageHeaderFooter = False
.ScaleWithDocHeaderFooter = True
.AlignMarginsHeaderFooter = True
.EvenPage.LeftHeader.Text = ""
.EvenPage.CenterHeader.Text = ""
.EvenPage.RightHeader.Text = ""
.EvenPage.LeftFooter.Text = ""
.EvenPage.CenterFooter.Text = ""
.EvenPage.RightFooter.Text = ""
.FirstPage.LeftHeader.Text = ""
.FirstPage.CenterHeader.Text = ""
.FirstPage.RightHeader.Text = ""
.FirstPage.LeftFooter.Text = ""
.FirstPage.CenterFooter.Text = ""
.FirstPage.RightFooter.Text = ""
End With
'ActiveWindow.SelectedSheets.PrintPreview
ExecuteExcel4Macro "PRINT(1,,,1,,FALSE,,,,,,1,,,TRUE,,FALSE)"


This runs slowly - lots of screen flashing going on. I just want to print
the selection and fit to page, so I'm not sure where all the other stuff is
coming from. If I just manually select the area and print - it runs very
fast - none of the screen flashing - so I'm not sure what's going on. I
would appreciate any enlightenment on this subject. Thanks.
 
J

Jacob Skaria

Remove all the lines and try with the last line..

Sub MyPrint()
ExecuteExcel4Macro "PRINT(2,1,1,1,,,,,,,,1,,,TRUE,,FALSE)"
End Sub

If this post helps click Yes
 
D

dhstein

Jacob,

I kept a few lines like fit to pages wide and orientation = landscape. It
seems to be faster now. Thanks.
 
J

Jacob Skaria

Also you can use to disable any flashing///

Application.DisplayAlerts = False
'your code
application.DisplayAlerts = True
 
G

Gord Dibben

Jacob

I believe you meant to post...............

Application.ScreenUpdating = False

your code

Application.ScreenUpdating = True


Gord Dibben MS Excel MVP
 
J

Jacob Skaria

For avoiding the flashing please use...Thanks Gord...

Application.ScreenUpdating = False
'your code
Application.ScreenUpdating = True
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top