Written by Allen Wyatt (last updated August 23, 2024)
This tip applies to Excel 2007, 2010, 2013, 2016, 2019, and 2021
Clinton has a workbook containing over 200 worksheets that get populated by various people in his company during the month. At the end of the month he needs to print these worksheets. Not all the worksheets contain data and Clinton only wants to print the worksheets that contain data so he doesn't waste paper. He wonders if there is, perhaps, a macro that he can use to print only those worksheets that have a value in cell G41.
The answer is that such a macro could be written rather easily. It would only need to figure out how many worksheets there are, check cell G41 on each of them, and then print only if there is something in that cell. The following macro performs just these operations.
Sub PrintMost() Dim wks As Worksheet For Each wks In ActiveWorkbook.Worksheets If Not IsEmpty(wks.Range("G41")) Then wks.PrintOut End If Next End Sub
The macro could be easily modified to perform other operations, such as asking if any given worksheet should be printed or asking how many copies should be printed.
Note:
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (10819) applies to Microsoft Excel 2007, 2010, 2013, 2016, 2019, and 2021. You can find a version of this tip for the older menu interface of Excel here: Printing Only Non-Blank Worksheets.
Create Custom Apps with VBA! Discover how to extend the capabilities of Office 365 applications with VBA programming. Written in clear terms and understandable language, the book includes systematic tutorials and contains both intermediate and advanced content for experienced VB developers. Designed to be comprehensive, the book addresses not just one Office application, but the entire Office suite. Check out Mastering VBA for Microsoft Office 365 today!
Excel allows you to repeat rows at the top of every page of a printout. If you want to repeat rows at the bottom of every ...
Discover MoreWhen you print a worksheet, Excel allows you to also print handy gridlines for the worksheet. If you want to include the ...
Discover MoreYou can modify Excel's BeforePrint event handler to change how the printing process occurs. Unfortunately, though, Excel ...
Discover MoreFREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
There are currently no comments for this tip. (Be the first to leave your comment—just use the simple form above!)
Got a version of Excel that uses the ribbon interface (Excel 2007 or later)? This site is for you! If you use an earlier version of Excel, visit our ExcelTips site focusing on the menu interface.
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2025 Sharon Parq Associates, Inc.
Comments