ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Printing VBA (https://www.excelbanter.com/excel-programming/365530-printing-vba.html)

Valery2105

Printing VBA
 
Hi,

I have searched hi and low for an answer and hoping that soemone can help me.

I have an Excel workbook that will protected so that no changes may be made
to it with the exception of myself and 2 others. The workbook needs a print
button that will only print of Task pages (ie page 3, 5 ,7) if there is data
in it other than the format contents. Is this possible? Is this a VBA code I
need? Please
help.

Thanks


Mark Driscol[_2_]

Printing VBA
 
You would have to identify your Task pages somehow. Here are two
methods.

1. Hardcode (which may not be desirable) the worksheet names into a
macro.

Option Explicit

Sub PrintTaskSheets()

Dim var As Variant
Dim varArray As Variant

varArray = Array("SheetName3", "SheetName7", "SheetName9")
For Each var In varArray
ActiveWorkbook.Sheets(var).PrintOut
Next var

End Sub


2. Change the color of the Task sheets to anything but white. Print
any sheet with a non-white tab color.

Option Explicit

Sub PrintTaskSheets()

Dim sh As Variant

For Each sh In ActiveWorkbook.Sheets
If sh.Tab.ColorIndex < xlNone Then sh.PrintOut
Next sh

End Sub


Mark



Valery2105 wrote:
Hi,

I have searched hi and low for an answer and hoping that soemone can help me.

I have an Excel workbook that will protected so that no changes may be made
to it with the exception of myself and 2 others. The workbook needs a print
button that will only print of Task pages (ie page 3, 5 ,7) if there is data
in it other than the format contents. Is this possible? Is this a VBA code I
need? Please
help.

Thanks



Mark Driscol[_2_]

Printing VBA
 
That should have read "Change the color of the Task sheets' tabs to
anything but white"

Mark


Mark Driscol wrote:
You would have to identify your Task pages somehow. Here are two
methods.

1. Hardcode (which may not be desirable) the worksheet names into a
macro.

Option Explicit

Sub PrintTaskSheets()

Dim var As Variant
Dim varArray As Variant

varArray = Array("SheetName3", "SheetName7", "SheetName9")
For Each var In varArray
ActiveWorkbook.Sheets(var).PrintOut
Next var

End Sub


2. Change the color of the Task sheets to anything but white. Print
any sheet with a non-white tab color.

Option Explicit

Sub PrintTaskSheets()

Dim sh As Variant

For Each sh In ActiveWorkbook.Sheets
If sh.Tab.ColorIndex < xlNone Then sh.PrintOut
Next sh

End Sub


Mark



Valery2105 wrote:
Hi,

I have searched hi and low for an answer and hoping that soemone can help me.

I have an Excel workbook that will protected so that no changes may be made
to it with the exception of myself and 2 others. The workbook needs a print
button that will only print of Task pages (ie page 3, 5 ,7) if there is data
in it other than the format contents. Is this possible? Is this a VBA code I
need? Please
help.

Thanks




All times are GMT +1. The time now is 08:02 AM.

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