Table of contents
在本教程中,你将学习如何在Excel中手动选择打印区域,以及如何通过使用宏为多个工作表设置打印范围。
当你打到 印刷品 按钮,整个电子表格就会被默认打印出来,这往往需要好几页纸。 但是,如果你并不真的需要在纸上打印一个巨大的工作表的所有内容呢? 幸运的是,Excel提供了定义打印部分的能力。 这个功能被称为 打印区 .
Excel打印区
A 打印区 如果你不想打印整个电子表格,可以设置一个打印区域,只包括你选择的单元格。
当你按下Ctrl + P或点击 印刷品 在有定义的打印区域的纸张上按下按钮,只有该区域会被打印。
你可以在一个工作表中选择多个打印区域,每个区域将打印在单独的一页上。 保存工作簿的同时也保存了打印区域。 如果你以后改变主意,你可以清除打印区域或改变它。
定义打印区域可以让你对每个打印页面的外观有更多的控制,理想情况下,你应该在将工作表发送到打印机之前总是设置一个打印区域。 如果没有它,你可能会出现混乱的、难以阅读的页面,一些重要的行和列被切断,特别是如果你的工作表比你使用的纸张大。
如何在Excel中设置打印区域
要指示Excel你的数据的哪一部分应该出现在打印的副本中,请按以下方法之一进行。
在Excel中设置打印区域的最快捷方法
设置一个恒定的打印范围的最快速方法是这样的。
- 选择你想打印的工作表的部分。
- 关于 页面布局 选项卡,在 页面设置 组,点击 打印区 > 设置打印区域 .
会出现一条淡淡的灰线,表示打印区域。
在Excel中定义打印区域的更多信息方式
想直观地看到你的所有设置吗? 这里有一个更透明的方法来定义打印区域。
- 关于 页面布局 选项卡,在 页面设置 组,单击对话启动器 这将打开 页面设置 对话框。
- 关于 钣金 标签,将光标放在 打印区域 要选择多个范围,请记得按住Ctrl键。
- 点击 认可 .
提示和说明。
- 当你保存工作簿时,打印区域也被 节省了 每当你将工作表发送到打印机时,只有该区域会被打印。
- 为了确保所定义的区域是你真正想要的,按Ctrl + P,然后逐一查看 页面预览 .
- 要想在不设置打印区域的情况下快速打印数据的某一部分,请选择所需的范围,按Ctrl + P并选择 印刷品选择 下的下拉列表中的 设置 欲了解更多信息,请参见如何打印选择、工作表或整个工作簿。
如何在Excel中设置多个打印区域
要打印一个工作表的几个不同部分,你可以通过这种方式选择多个打印区域。
- 选择第一个范围,按住Ctrl键,选择其他范围。
- 关于 页面布局 选项卡,在 页面设置 组,点击 打印区 > 设置打印区域 .
完成了!多个打印区域被创建,每个区域都代表自己的页面。
注意,这只适用于 不毗连的 相邻的范围,即使是单独选择,也将包括在一个单一的打印区域。
如何强制Excel忽略打印区域
当你想获得整个工作表或整个工作簿的硬拷贝,但又不想麻烦地清除所有的打印区域时,只要告诉Excel忽略它们就可以了。
- 点击 文件 > 印刷品 或按Ctrl + P 。
- 隶属 设置 ,点击旁边的箭头 打印活动表 并选择 忽略打印区域 .
如何在一张纸上打印多个区域
每张纸打印多个区域的能力是由打印机模型控制的,而不是由Excel控制的。 要检查这个选项是否对你可用,按Ctrl + P ,点击 打印机属性 链接,然后切换到 "我 "的可用标签。 打印机属性 对话框中搜索 每张纸的页数 选择。
如果你的打印机有这样的选项,你很幸运 :) 如果没有这样的选项,那么我能想到的唯一方法就是把打印范围复制到一个新的工作表。 在 "特殊粘贴 "功能的帮助下,你可以通过这种方式把复制的范围与原始数据联系起来。
- 选择第一个打印区域,按Ctrl+C复制它。
- 在一个新的工作表上,右击任何一个空白单元格,选择 粘贴专用 > 链接图片 .
- 对其他印刷区域重复步骤1和2。
- 在新的工作表中,按Ctrl + P将所有复制的打印区域打印在一张纸上。
如何用VBA在Excel中为多个工作表设置打印区域
如果你有很多结构完全相同的工作表,你显然希望在纸上输出相同的愤怒。 问题是,选择几个工作表会禁用 打印区 幸运的是,有一个简单的解决方法,在《如何在多张纸上打印同一范围》中有所描述。
如果你必须定期在多张纸上打印同一区域,使用VBA可以加速事情的进展。
将所选纸张的打印区域设置为活动纸张上的打印区域
这个宏自动为所有选定的工作表设置与活动工作表相同的打印区域。 当选择多个工作表时,活动工作表是你运行宏时可见的那个。
Sub SetPrintAreaSelectedSheets() Dim CurrentPrintArea As String Dim Sheet As Worksheet CurrentPrintArea = ActiveSheet.PageSetup.PrintArea For Each Sheet In ActiveWindow.SelectedSheets Sheet.PageSetup.PrintArea = CurrentPrintArea span>Next End Sub将所有工作表的打印范围设置为活动表上的打印范围
无论你有多少张工作表,这段代码都能一次性定义整个工作簿的打印范围。 只需在活动表上设置所需的打印区域并运行宏。
Sub SetPrintAreaAllSheets() Dim CurrentPrintArea As String Dim Sheet As Worksheet CurrentPrintArea = ActiveSheet.PageSetup.PrintArea For Each Sheet In ActiveWorkbook.Sheets If Sheet.Name ActiveSheet.Name Then Sheet.PageSetup.PrintArea = CurrentPrintArea End If Next End Sub在多张纸中设置指定的打印区域
在处理不同的工作簿时,如果宏提示你选择一个范围,你会发现很方便。
它是这样工作的:你选择所有的目标工作表,运行宏,在提示时选择一个或多个范围(要选择多个范围,按住Ctrl键),并点击 认可 .
Sub SetPrintAreaMultipleSheets() Dim SelectedPrintAreaRange As Range Dim SelectedPrintAreaRangeAddress As String Dim Sheet As Worksheet On Error Resume Next Set SelectedPrintAreaRange = Application.InputBox("请选择打印区域范围" , "在多个工作表中设置打印区域" , Type :=8) If Not SelectedPrintAreaRange Is Nothing Then SelectedPrintAreaRangeAddress =SelectedPrintAreaRange.Address( True , True , xlA1, False ) For Each Sheet In ActiveWindow.SelectedSheets Sheet.PageSetup.PrintArea = SelectedPrintAreaRangeAddress Next End If Set SelectedPrintAreaRange = Nothing End Sub如何使用宏程序
最简单的方法是下载我们的带打印区宏的样本工作簿,并直接从该工作簿中运行一个宏。 方法如下。
- 打开下载的工作簿,如果有提示,请启用宏。
- 打开你自己的工作簿。
- 在你的工作簿中,按Alt + F8,选择感兴趣的宏,并点击 运行 .
该样本工作簿包含以下宏。
- SetPrintAreaSelectedSheets - 将所选纸张中的打印区域设置为活动纸张上的打印区域。
- 设置所有纸张的打印区域 - 将当前工作簿中所有工作表的打印区域设置为活动表。
- SetPrintAreaMultipleSheets - 在所有选定的工作表中设置指定的打印区域。
另外,你可以将文件保存为支持宏的工作簿(.xlsm),并在其中添加一个宏。 详细的步骤说明,请参见如何在Excel中插入和运行VBA代码。
如何改变Excel中的打印区域
不小心包含了不相关的数据或错过了选择几个重要的单元格? 没问题,有3种简单的方法可以在Excel中编辑打印区域。
如何在Excel中扩大打印区域
要在现有的打印区域添加更多的单元格,只需做以下工作。
- 选择你想添加的单元格。
- 关于 页面布局 选项卡,在 页面设置 组,点击 打印区 > 添加到打印区 .
完成了!
这当然是修改打印区域的最快方法,但不是透明的。 为了正确地进行修改,这里有几个重要的事情要记住。
- ǞǞǞ 添加到打印区 选项仅在工作表已经有至少一个打印区域时出现。
- 如果你要添加的单元格是 不毗邻 到现有的打印区域,一个新的打印区域被创建,它将被打印成不同的页面。
- 如果新的细胞是 邻近的 到现有的打印区域,它们将被包括在同一区域并打印在同一页上。
通过使用名称管理器在Excel中编辑打印区域
每次你在Excel中设置打印区域时,都会有一个定义的范围,名为 打印_区域 以下是方法。
- 关于 公式 选项卡,在 定义的名称 组,点击 名字经理 或按Ctrl + F3快捷键。
- 在 名字经理 对话框,选择你要改变的范围,然后点击 编辑 按钮。
通过 "页面设置 "对话框改变打印区域
在Excel中调整打印区域的另一个快速方法是使用 页面设置 这种方法最好的一点是,它可以让你做任何你想做的改变--修改打印区域,删除或添加一个新的打印区域。
- 关于 页面布局 选项卡,在 页面设置 组,单击对话框启动器(右下角的一个小箭头)。
- 关于 钣金 选项卡的 页面设置 对话框,你会看到 打印区域 盒子,并可以在那里做你的编辑。
- 拟 修改 现有的打印区域,删除并手动输入正确的参考信息。
- 拟 替换 的区域,将光标放在 打印区域 这将删除所有现有的打印区域,因此只有选定的区域被设置。
- 拟 增加 在选择一个新的区域时,按住Ctrl键,这将在现有区域之外设置一个新的打印区域。
如何清除Excel中的打印区域
清除打印区域和设置一样简单 :)
- 打开感兴趣的工作表。
- 切换到 页面布局 标签> 页面设置 组,并点击 清除打印区域 按钮。
注意:如果一个工作表包含多个打印区,所有的打印区都将被删除。
如何锁定Excel中的打印区域
如果你经常与其他人分享你的工作簿,你可能想保护打印区域,这样就不会有人弄乱你的打印输出。 遗憾的是,在Excel中没有直接的方法来锁定打印区域,即使通过保护工作表或工作簿。
在Excel中保护打印区域的唯一可行方案是使用VBA。 为此,你需要添加 工作簿_打印前 事件处理程序,在打印前默默地强制指定打印区域。
一个更简单的方法是将事件处理程序设置为 活页 ,但这是有以下注意事项的。
- 你的所有工作表都应该有相同的打印速度。
- 你需要在打印前选择所有的目标页标签。
如果不同的纸张有不同的结构,那么指定打印区域为 每张纸都是单独的 .
Private Sub Workbook_BeforePrint(Cancel As Boolean ) Worksheets( "Sheet1").PageSetup.PrintArea = "A1:D10" Worksheets( "Sheet2") .PageSetup.PrintArea = "A1:F10" End Sub上述宏设置打印区域为A1:D10,用于 第1张 和A1:F10为 第二张 你可以根据需要自由改变这些内容,也可以增加更多的纸张。
要在你的工作簿中添加事件处理程序,请执行以下步骤。
- 按Alt + F11键,打开 Visual Basic编辑器 .
- 在左边的项目资源管理器窗口中,展开目标工作簿的节点,双击 这本工作手册 .
- 在 这个工作簿代码 窗口,粘贴该代码。
注意:要使这种方法奏效,需要将文件保存为支持宏的工作簿(.xlsm),并且在打开工作簿时应启用宏。
Excel打印区域问题
Excel中的大多数打印问题通常与打印机设置有关,而不是与打印区域有关。 尽管如此,当Excel不能正确打印数据时,以下的故障排除提示可能会有帮助。
无法在Excel中设置打印区域
问题 : 你不能让Excel接受你定义的打印区域。 打印区 字段显示了一些奇怪的范围,但不是你所输入的那些。
解决方案 : 尝试完全清除打印区域,然后重新选择。
不是所有的栏目都被打印出来
问题 :你已经为打印区选择了一定数量的列,但不是所有的列都被打印出来。
解决方案 :很可能是列的宽度超过了纸的尺寸。 试着使页边距变窄或调整缩放比例 - 选择 将所有栏目放在一个页面上 .
打印区域在几页上打印
问题 : 你想要一页的打印结果,但它却打印了好几页。
解决方案。 如果你只选择了一个范围,但它被分割成几页,那么很可能它大于纸张尺寸。 要解决这个问题,请尝试将所有边距设置为接近0或选择 一页纸上的合适表。 更多详情,请参见如何在一页上打印Excel电子表格。
这就是你在Excel中设置、改变和清除打印区域的方法。 感谢你的阅读,希望下周在我们的博客上见到你!