How to print certain pages or worksheet based on cell value in Excel?
Have you ever tried to print certain page or worksheet based on a cell value in Excel? And how to achieve it? Methods in this article can help you to solve it in details.
Print certain page based on cell value with VBA code
Print certain worksheet based on cell value with VBA code
Print certain page based on cell value with VBA code
For example, you want a certain page such as page 1 of current worksheet to be printed automatically when entering the page number 1 into cell A1 in current worksheet. You can do as follows to achieve it.
1. Select the cell contains the page number you want to print based on, then press Alt and F11 keys simultaneously to open the Microsoft Visual Basic for Applications window. Then click Insert > Module.
2. Then the Microsoft Visual Basic for Applications window pops up, please copy and paste the following VBA code into the Code window.
VBA code: Print page based on cell value
Option Explicit
Sub Print_Pages()
Dim xPage As Integer
Dim xYesorNo As Integer
With ActiveCell
If Not IsEmpty(.Value) And IsNumeric(.Value) Then
xPage = .Value
Else: MsgBox "Please specify a cell and enter a page in cell"
Exit Sub
End If
End With
xYesorNo = MsgBox("Ready to print page" & xPage & " ", vbYesNo, "Kutools for Excel")
If xYesorNo = vbYes Then
ActiveSheet.PrintOut from:=xPage, To:=xPage, preview:=True
Else
Exit Sub
End If
End Sub
3. Press F5 key to run the code. In the popping up Kutools for Excel dialog box, click the Yes button to print the certain page, or click the No button to exit the dialog box if you don’t want to print. See screenshot:

Then the preview window of the certain page of current worksheet opens, please click the Print button to start printing.

Print certain page based on cell value with VBA code
Supposing you want to print the active worksheet when value in cell B2 of this sheet equals to number 1001. You can achieve it with the following VBA code. Please do as follows.
1. Right click the Sheet Tab that you want to print based on cell value, and then click View Code from the right-clicking menu.
2. Then the Microsoft Visual Basic for Applications window pops up, please copy and paste the following VBA code into the Code window.
VBA code: Print worksheet based on cell value
Private Sub Worksheet_Change(ByVal Target As Range)
Dim xCell As Range, xYesorNo As Integer
Set xCell = ActiveSheet.Range("B2")
If Application.Intersect(Target, xCell) Is Nothing Then Exit Sub
If xCell.Value = 1001 Then
xYesorNo = MsgBox("Ready to print the specified worksheet? ", vbYesNo, "Kutools for Excel")
If xYesorNo = vbYes Then
ActiveSheet.PrintOut
Else
Exit Sub
End If
End If
End Sub

Note: You can change the cell and cell value in the code as you need.
3. Press Alt + Q to close the Microsoft Visual Basic for Applications window.
When entering number 1001 into cell B2, a Kutools for Excel dialog box pops up, please click the Yes button to start printing. Or click the No button to exit the dialog box directly without printing. See screenshot:

Tip: If you want to directly print non-consecutive pages such as page 1, 6 and 9 in current worksheet, or print only all even or odd pages, you can try the Print Specified Pages utility pf Kutools for Excel as below screenshot shown. You can go to free download the software with no limitation in
30 days.

Related articles:
The Best Office Productivity Tools
Kutools for Excel Solves Most of Your Problems, and Increases Your Productivity by
80%
- Reuse: Quickly insert complex formulas, charts and anything that you have used before; Encrypt Cells with password; Create Mailing List and send emails...
- Super Formula Bar (easily edit multiple lines of text and formula); Reading Layout (easily read and edit large numbers of cells); Paste to Filtered Range...
- Merge Cells/Rows/Columns without losing Data; Split Cells Content; Combine Duplicate Rows/Columns... Prevent Duplicate Cells; Compare Ranges...
- Select Duplicate or Unique Rows; Select Blank Rows (all cells are empty); Super Find and Fuzzy Find in Many Workbooks; Random Select...
- Exact Copy Multiple Cells without changing formula reference; Auto Create References to Multiple Sheets; Insert Bullets, Check Boxes and more...
- Extract Text, Add Text, Remove by Position, Remove Space; Create and Print Paging Subtotals; Convert Between Cells Content and Comments...
- Super Filter (save and apply filter schemes to other sheets); Advanced Sort by month/week/day, frequency and more; Special Filter by bold, italic...
- Combine Workbooks and WorkSheets; Merge Tables based on key columns; Split Data into Multiple Sheets; Batch Convert xls, xlsx and PDF...
- More than
300 powerful features. Supports Office/Excel
2007-2019 and 365. Supports all languages. Easy deploying in your enterprise or organization. Full features
30-day free trial. 60-day money back guarantee.
Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier
- Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
- Open and create multiple documents in new tabs of the same window, rather than in new windows.
- Increases your productivity by
50%, and reduces hundreds of mouse clicks for you every day!