跳至主要内容

Kutools for Office — 一套工具,五种功能。事半功倍。

如何根据Excel中的单元格值打印特定页面或工作表?

Author Siluvia Last modified

您是否曾经需要根据Excel中某个单元格的值来打印特定页面或工作表?无论是打印特定页码,还是在满足条件时打印整个工作表,本指南都提供了逐步实现的方法。

使用VBA代码根据单元格值打印特定页面
使用VBA代码根据单元格值打印特定工作表


使用VBA代码根据单元格值打印特定页面

例如,当在当前工作表的A1单元格中输入页码1时,您希望自动打印当前工作表的第1页。您可以按照以下步骤操作来实现这一目标。

1. 选择包含要打印页码的单元格,然后同时按下 AltF11 键打开 Microsoft Visual Basic for Applications 窗口。然后点击 插入 > 模块

2. 接着会弹出 Microsoft Visual Basic for Applications 窗口,请将以下VBA代码复制并粘贴到代码窗口中。

VBA代码:根据单元格值打印页面

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. 按下 F5 键运行代码。在弹出的 Kutools for Excel 对话框中,点击“”按钮以打印指定页面,或者如果您不想打印,可以点击“”按钮退出对话框。请参见截图:

A screenshot of the Kutools for Excel dialog box for printing a specific page based on a cell value

随后会打开当前工作表指定页面的预览窗口,请点击 打印 按钮开始打印。

A screenshot of the Print Preview window


使用VBA代码根据单元格值打印特定页面

假设当此工作表的B2单元格中的值等于数字1001时,您希望打印活动工作表。您可以使用以下VBA代码来实现。请按以下步骤操作。

1. 右键单击您希望基于单元格值打印的工作表标签,然后从右键菜单中点击 查看代码

2. 随后会弹出 Microsoft Visual Basic for Applications 窗口,请将以下VBA代码复制并粘贴到代码窗口中。

VBA代码:根据单元格值打印工作表

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

A screenshot showing where to insert VBA code for printing based on a cell value in Excel

备注:您可以根据需要更改代码中的单元格及其值。

3. 按 Alt + Q 关闭 Microsoft Visual Basic for Applications 窗口。

当在B2单元格中输入数字1001时,会弹出一个 Kutools for Excel 对话框,请点击“”按钮开始打印。或者点击“”按钮直接退出对话框而不进行打印。请参见截图:

A screenshot of the Kutools for Excel dialog box for confirming worksheet printing based on cell value

提示:如果您想直接打印非连续页面(如当前工作表中的第1、6和9页),或者仅打印所有偶数页或奇数页,可以尝试使用 Kutools for Excel打印指定页 功能,如下图所示。

A screenshot of the Kutools for Excel Print Specified Pages utility for selective printing

Kutools for Excel - 通过超过300个必备工具,让Excel功能大幅提升。永久免费享受AI功能!立即获取


相关文章

最佳Office办公效率工具

🤖 Kutools AI 助手:以智能执行为基础,彻底革新数据分析 |代码生成 |自定义公式创建|数据分析与图表生成 |调用Kutools函数……
热门功能:查找、选中项的背景色或标记重复项 | 删除空行 | 合并列或单元格且不丢失数据 | 四舍五入……
高级LOOKUP多条件VLookup|多值VLookup|多表查找|模糊查找……
高级下拉列表快速创建下拉列表 |依赖下拉列表 | 多选下拉列表……
列管理器添加指定数量的列 | 移动列 | 切换隐藏列的可见状态 | 比较区域与列……
特色功能网格聚焦 |设计视图 | 增强编辑栏 | 工作簿及工作表管理器 | 资源库(自动文本) | 日期提取 | 合并数据 | 加密/解密单元格 | 按名单发送电子邮件 | 超级筛选 | 特殊筛选(筛选粗体/倾斜/删除线等)……
15大工具集12项 文本工具添加文本删除特定字符等)|50+种 图表 类型甘特图等)|40+实用 公式基于生日计算年龄等)|19项 插入工具插入二维码从路径插入图片等)|12项 转换工具小写金额转大写汇率转换等)|7项 合并与分割工具高级合并行分割单元格等)| ……
Kutools支持多种语言——可选择英语、西班牙语、德语、法语、中文等40多种语言!

通过Kutools for Excel提升您的Excel技能,体验前所未有的高效办公。 Kutools for Excel提供300多项高级功能,助您提升效率并节省时间。 点击此处获取您最需要的功能……


Office Tab为Office带来多标签界面,让您的工作更加轻松

  • 支持在Word、Excel、PowerPoint中进行多标签编辑与阅读
  • 在同一个窗口的新标签页中打开和创建多个文档,而不是分多个窗口。
  • 可提升50%的工作效率,每天为您减少数百次鼠标点击!

所有Kutools加载项,一键安装

Kutools for Office套件包含Excel、Word、Outlook和PowerPoint的插件,以及Office Tab Pro,非常适合跨Office应用团队使用。

Excel Word Outlook Tabs PowerPoint
  • 全能套装——Excel、Word、Outlook和PowerPoint插件+Office Tab Pro
  • 单一安装包、单一授权——数分钟即可完成设置(支持MSI)
  • 协同更高效——提升Office应用间的整体工作效率
  • 30天全功能试用——无需注册,无需信用卡
  • 超高性价比——比单独购买更实惠