In Excel, when you click the Print button, Excel will not print hidden sheets, except use VBA. Here is a large examples of print Worksheets use Excel VBA, Before you read this tutorial, you may need to know the difference between Worksheets and Sheets.
PrintOut Syntax
expression.PrintOut(From, To, Copies, Preview, ActivePrinter, PrintToFile, Collate, PrToFileName, IgnorePrintAreas)
Print Worksheets on One Page
'Print Sheet1 exactly one page wide and tall
With Worksheets("Sheet1").PageSetup
.Zoom = False
.FitToPagesTall = 1
.FitToPagesWide = 1
End With
Print Worksheets with Comments
Sub PrintWorksheetsWithComments()
'Display all comments
Application.DisplayCommentIndicator = xlCommentAndIndicator
With ActiveSheet
'As displayed on sheet
.PageSetup.PrintComments = xlPrintInPlace
'Print the active sheet
.PrintOut
End With
End Sub
Print Only Hidden Worksheets
Sub PrintOnlyHiddenWorksheets()
Dim CurVis As Long
Dim sh As Worksheet
For Each sh In ActiveWorkbook.Worksheets
With sh
CurVis = .Visible
If CurVis >= 0 Then
.Visible = xlSheetVisible
.PrintOut
.Visible = CurVis
End If
End With
Next sh
End Sub
Print Visible and Hidden Worksheets
Sub PrintHiddenAndVisibleWorksheets()
Dim CurVis As Long
Dim sh As Worksheet
For Each sh In ActiveWorkbook.Worksheets
With sh
CurVis = .Visible
.Visible = xlSheetVisible
.PrintOut
.Visible = CurVis
End With
Next sh
End Sub
Print Multiple Worksheets
'Print Sheet2 and Sheet3
Worksheets(Array("Sheet2", "Sheet3")).PrintOut
Print All Worksheets
'Print all worksheets
Worksheets.PrintOut
Print All Charts
'Print all Charts
Charts.PrintOut
Print Whole Workbook
'Print the active whole workbook
ActiveWorkbook.PrintOut
'Print this workbook which the VBA code in
ThisWorkbook.PrintOut
Print a Specific Sheet
'Print only "Sheet2"
Sheets("Sheet2").PrintOut
Print the Active Sheet
'only the activesheet
ActiveSheet.PrintOut
Print Selected Sheets
'Print all selected sheets
ActiveWindow.SelectedSheets.PrintOut
Print Selection
'Print only the selection
Selection.PrintOut
Print A Range
'Print range A1:C6
Range("A1:C6").PrintOut
Print preview
'Active sheet print preview
ActiveSheet.PrintOut preview:=True
I see your blog needs some fresh & unique articles.
Writing manually is time consuming, but there is solution for this.
Just search for; Masquro's strategies
HI This is Mallesh,
Could you please help me .
Actually by using macros i have prepared progress cards. the problem is all printing in individual sheet.
is there any possibility to print two reports in one sheet.
How to print data from only one worksheet to Text file and I need to insert the VB in another sheet.