Printing twice instead of Once.

J

jr2002

Sub Printbooks()
DirName = InputBox("Enter the directory to search including final
:", "Print Books")
Nextbook = Dir(DirName & "*.xls")
Do While (Nextbook <> "" Or Nextbook <> "G:\M
Documents\Report_printing_at_a_go\Printbooks.XLS")
MsgBox Nextbook & " is being opened"

Workbooks.Open DirName & Nextbook
For Each sheet In Workbooks()
On Error Resume Next
If Worksheets("Report").Activate <> "" Then
' Application.Dialogs(xlDialogPrinterSetup).Show
If ActiveSheet.Name = "Report" Then ActiveSheet.PrintOu
preview:=False, Copies:=1
'ActiveWorkbook.PrintOut
ActiveSheet.Close
End If
Next sheet

MsgBox Nextbook & " is being closed"
ActiveWorkbook.Close
Nextbook = Dir()
Loop

End Sub

The above code intend print sheet named report once. Please help me
 
B

BrianB

Posting twice the same day tends to *delay* answers rather tha
increasing the chance of a reply. I have wasted too much time in th
past answering one only to find someone else has put an answer i
another posting. So I leave it alone.

I have amended your code but not tested it.

Code
-------------------

Sub Printbooks()
'- get dir
DirName = InputBox("Enter the directory to search including final \ :", "Print Books")
Nextbook = Dir(DirName & "*.xls")
'- open workbooks
Do While (Nextbook <> "" Or Nextbook <> _
"G:\My Documents\Report_printing_at_a_go\Printbooks.XLS")
MsgBox Nextbook & " is being opened"
Workbooks.Open DirName & Nextbook
'==============================================
' AMENDED CODE
'- print report
ActiveWorkbook.Worksheets("Report").PrintOut preview:=False, Copies:=1
'==============================================
'-close/next
MsgBox Nextbook & " is being closed"
ActiveWorkbook.Close
Nextbook = Dir()
Loop
End Sub

-------------------
 

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