打印预览与页面设置
打印这件事,问题从来不在打印本身
大多数人第一次被 Excel 打印折磨,是这种场景:你在屏幕上把表做得漂漂亮亮,点击打印,出来的纸让你怀疑人生——表被切成了三页,第二页只有一列孤零零的数字;表头只出现在第一页,后面几页完全不知道每列是什么;页边距大得离谱,一页纸上只印了一半的内容;右下角还印着别人的文件名。
然后你开始调:调页边距、调缩放、调打印区域,每调一次就要打印预览看一眼,看一次刷新一次。调了十几次终于对了,但下周做类似的表,一切重来。
打印这件事的麻烦在于它有两个阶段,而且大多数人把这两个阶段混在一起:
- 阶段一:内容准备。你的表格结构本身是否适合打印?有没有多余的空列把内容撑散?表头有没有做?数据有没有跨行断裂?
- 阶段二:页面设置。纸张方向、边距、缩放、打印区域、标题行重复、页眉页脚。
阶段一没做好,阶段二怎么调都别扭。比如你的表格右边有一列空列被算进了打印范围,你就要靠缩放硬塞,塞完字变得很小。真正的解法是先把那列删掉或者把打印区域设对。
本章讲的是这两个阶段各自的键盘打法。核心工具是打印预览和页面设置这两个地方,用键盘可以快速在两者之间来回,边调边看,不用打印就能确认效果。
Ctrl+P 之后的预览界面
Ctrl+P 是打印的总入口。按下去之后,Excel 会进入打印预览界面(新版 Excel 里这个界面和「文件」菜单合在一起了)。
在这个界面里,你能看到的东西和能操作的东西比很多人以为的多:
- 右侧(或者左侧,取决于版本)是打印设置区,能选打印机、设份数、选打印范围(全部、当前页、或者自定义页码)、单选打印活动工作表还是整个工作簿、单面双面、纸张方向和大小、页边距、缩放。
- 中间是预览,能看到实际打印出来的效果,翻页用底部的页码控制。
- 底部有页面设置的入口,点进去是更完整的设置对话框。
用键盘在这个界面里操作是可行的,主要靠 Tab 键在控件之间移动,方向键在选项之间切换,空格勾选或者选中,回车确认。不过说实话,这个界面用键盘的效率不如用鼠标,因为控件比较多、布局是视觉导向的。所以我的建议是:预览界面用鼠标,页面设置对话框用键盘。后者才是真正值得练键位的地方。
这里有一个很值钱的技巧:Ctrl+P 不只是打印前的动作,它应该是「检查」动作。我建议你在表格做完之后习惯性按一下 Ctrl+P 看一眼预览,确认没有奇怪的切页、没有内容跑出边界,然后 Esc 退出。这一步花五秒钟,能避免很多「发出去之后才发现格式乱」的尴尬。打印预览是所有排版问题的免费体检。
| 动作 | 按键 | 说明 |
|---|---|---|
| 打开打印预览 | Ctrl+P |
打印与检查的统一入口 |
| 关闭预览返回 | Esc |
不改动任何设置 |
| 在控件间移动 | Tab / Shift+Tab |
预览界面里的导航 |
| 选中单选按钮 | 方向键 | 纸张方向等 |
| 勾选复选框 | 空格 | 打印网格线等 |
页面设置对话框:真正的主战场
按 Ctrl+P 进预览之后,找到「页面设置」的链接点进去,会打开一个多选项卡的对话框:页面、页边距、页眉页脚、工作表。这四个选项卡覆盖了几乎所有排版需求。
在这个对话框里用键盘很顺:Ctrl+Tab 在四个选项卡之间前后切换,Tab 在选项之间移动,方向键选单选按钮,直接打字填输入框,回车确定。
四个选项卡各自管什么,值得说清楚:
页面选项卡管的是纸张层面的东西:方向(纵向还是横向)、缩放(按比例缩到百分之多少,或者「调整为 N 页宽 M 页高」)、纸张大小、打印质量、起始页码。
页边距选项卡管的是留白:上、下、左、右四个边距,还有页眉页脚离边缘的距离,以及「水平居中」「垂直居中」这两个勾选框。「水平居中」这个勾选非常值得用,尤其是打印窄表的时候,勾上它表格会在纸中间,看起来专业得多。不勾的话表格贴着左边,右边一大片空白。
页眉页脚选项卡管的是页眉和页脚内容:可以加页码、文件名、日期、工作表名,还可以自定义。默认的页眉页脚可能没什么用,值得花两分钟调成你需要的样子。
工作表选项卡里有几个关键设置:打印区域、打印标题(也就是每页重复的表头行)、打印顺序(先列后行还是先行后列)、以及是否打印网格线、行号列标、批注、错误值显示方式。
| 选项卡 | 关键设置 | 常见用途 |
|---|---|---|
| 页面 | 方向、缩放、纸张 | 横表改横向、缩到一页宽 |
| 页边距 | 四个边距、居中 | 让窄表居中、减小留白 |
| 页眉页脚 | 页码、文件名、日期 | 加上「第 X 页共 Y 页」 |
| 工作表 | 打印区域、打印标题、网格线 | 长表重复表头、去网格线 |
一个提效的细节:这四个选项卡不一定都要进,但「工作表」这个选项卡一定要进一次,因为「打印标题」的设置只有在长表上才能看出价值——而且它的入口就藏在这里,很多人做了几年表都不知道有这个功能。
打印区域与标题行:长表的两大救命设置

如果你的表只有一页,随便打打就行。一旦超过一页,问题就来了:表头只出现在第一页,后面几页全是裸露的数字。
设置打印标题就是解决这个的。在「工作表」选项卡里,有一个「顶端标题行」的输入框,点进去,然后用鼠标在工作表上选中你想重复的那一行(通常是有列标题的第一行或者前两行),它会自动填成类似 $1:$1 这样的写法。确定之后,每一页的顶部都会重复这一行。
同样的,如果你打印的是横向展开的宽表,还有一个「左端标题列」,可以让某一列在每页的左边重复出现。
设置打印标题的价值在长表上体现得非常明显。一份几百行的账单打出来,如果没有重复表头,翻到第五页你就不知道哪一列是金额哪一列是日期了。又如果你的表是横向按月份展开的,左边的「项目名称」列必须在每页都出现,否则第二页开始就是一堆没有名字的数字。
设置打印区域是另一个必备设置。Excel 默认打印的内容范围是「已用区域」,而这个区域很容易比你想要的范围大——因为某个格子里可能残留了点格式或者内容,把范围撑开了。结果是打印出来的纸上多出一片空白,或者多出一列你没打算打的东西。
解决办法是明确指定打印区域:选中你真正要打印的那一块,然后在「工作表」选项卡的「打印区域」里设置。设置之后,Excel 只打这一块。
这两个设置都可以用 Alt 序列走到,也可以在 Ctrl+P 预览里进页面设置。设置好之后是保存在文件里的,下次打开还在,不用重设。这一点很重要——页面设置是一次性配置、长期受益的,跟你做别的操作不一样。
| 设置项 | 解决什么问题 | 设置位置 |
|---|---|---|
| 打印标题行 | 第二页起看不见表头 | 工作表选项卡,顶端标题行 |
| 打印标题列 | 第二页起看不见行标签 | 工作表选项卡,左端标题列 |
| 打印区域 | 打印出多余空白或内容 | 工作表选项卡,打印区域 |
| 缩放为一页宽 | 宽表被切成两页 | 页面选项卡,缩放 |
| 水平居中 | 窄表贴在左边不好看 | 页边距选项卡 |
| 取消网格线 | 打印出满纸的格子线 | 工作表选项卡,不勾网格线 |
最后那一项可能要特别说一下。屏幕上的浅灰网格线是显示用的,本来不打印。但如果你在「工作表」选项卡里勾了「网格线」,那它就会被打印出来,效果是满纸的灰色格子,看起来很不专业。正规报表应该用自己加的边框来划分区域,而不是靠网格线。这个区别在做对外文件的时候很重要。
缩放的三种思路

宽表打印最恼人的问题是「被切成两页」。解决思路有三种,适用场景不一样。
思路一:按比例缩放。 在页面选项卡里设一个百分比,比如 80%。它的特点是等比例缩小,表格长宽都变小,所以如果表很大,缩到能放进一页时字会非常小,可能根本看不清。适合「稍微超出一点、缩一点点就能放下」的情况。
思路二:调整为 N 页宽。 设成「调整为 1 页宽」,Excel 会自动算出一个合适的比例,只保证宽度放得下,高度不限。这个思路最适合宽表:宽度压到一页,高度该几页就几页。绝大多数宽表用这个设置就够了,比手动试百分比快得多,而且不用试很多次。
思路三:改页面方向。 如果表是「列多行少」的形状,直接把纸张从纵向改成横向,往往一下就能解决,而且不用缩小字号。横向的宽度比纵向大很多,大多数十列左右的表改成横向就能一页放下。
三种思路的优先级建议是:先试改方向,不行再改页宽,最后才动百分比。因为前两个不会缩小字号,可读性最有保障;百分比缩放是最后的手段,代价是字变小。
| 思路 | 设置项 | 优点 | 代价 |
|---|---|---|---|
| 改方向 | 页面选项卡,横向 | 不缩字号 | 纸张尺寸变了 |
| 调页宽 | 页面选项卡,1 页宽 | 自动算比例 | 高度页数可能变多 |
| 缩百分比 | 页面选项卡,缩放到 N% | 可精细控制 | 字号随之变小 |
| 改列宽 | 直接调表格 | 从源头解决 | 可能影响屏幕阅读 |
| 隐藏无关列 | Ctrl+0 |
打印变干净 | 要记得取消隐藏 |
还有一个源头上解决问题的办法,值得单独提醒:先看看是不是有些列本来就不该打印。比如你的表里有「内部备注」「创建人」「ID」这类列,打印给客户看的时候根本不需要。这些列在打印时隐藏(Ctrl+0),问题就少了一半。改列宽也是同理,很多表被切页是因为某些列设得太宽了,实际内容只需要一半宽度。
打印前的完整检查清单
下面是一套在打印前走一遍的检查流程,全部可以用键盘完成。养成习惯之后,每次两三分钟,能省掉几乎所有的「打出来才发现问题」。
Ctrl+End看已用区域到哪儿。如果右下角跑到了很远的地方,说明有残留内容或者格式把范围撑大了,先处理掉。Ctrl+P看预览。重点看三件事:有没有多出不该有的空白页、有没有内容被切到第二页、整体是不是居中好看。- 如果被切页,进页面设置(
Ctrl+Tab到页面选项卡),先改横向试,不行改成「1 页宽」。 Ctrl+Tab到工作表选项卡,设打印区域、设顶端标题行(长表必做)、取消勾网格线。Ctrl+Tab到页边距选项卡,勾上水平居中(窄表必做),必要时把边距从默认的「常规」改成「窄」。Ctrl+Tab到页眉页脚选项卡,确认页眉页脚是你要的(默认可能有文件名或者页码,不一定合适)。- 回车确定,回到预览再看一遍。确认无误后
Esc退出(不打印),或者直接打印。
这里要强调一步:第 7 步的「Esc 退出」是刻意的。很多人的习惯是按了打印,其实只是想检查一下,结果浪费纸张。看完 Esc 退出,需要打印的时候再打。这个小习惯几个月能省不少纸。
还有一个进阶技巧值得知道:把所有的页面设置做成一个模板。做法是做好一次设置之后,把这个文件另存为模板(.xltx 格式),以后做类似的表都用它做起点,页面设置就自动带过来了。如果你的工作里经常做形状类似的报表,这个做法能省掉每次的重复配置。
一些容易被忽略的打印细节
除了上面那些主线设置,还有几个细节知道一下能少踩坑。
错误值打印。 如果你的表里有错误值(比如 #N/A),打印的时候它会原样打出来。在「工作表」选项卡里有一个「错误单元格打印为」的选项,可以设成显示成空白或者 --。这在正式交付的报表里很有用,能避免一张纸上出现一堆 #N/A 的尴尬。
批注的打印。 如果表里有批注,默认不打印。你可以在「工作表」选项卡里设置批注的打印方式(就地显示或者打印在末尾)。这个用得不多,但如果你的表用批注做了大量说明,打印出来给别人看的时候就需要它。
页码和总页数。 手动在页脚里写「第 1 页」是没用的,因为每一页都印「第 1 页」。正确的做法是用页脚代码:&P 表示当前页码,&N 表示总页数,写成「第 &P 页 共 &N 页」就会自动变成「第 3 页 共 5 页」这样的效果。页眉页脚里的其他代码还有 &D(日期)、&T(时间)、&F(文件名)、&A(工作表名)。这几个代码值得记一下,做正式的报表时加上文件名和日期是规范做法。
打印顺序。 如果一个表特别宽,被切成了「先右下再左下」这种奇怪的顺序,那是打印顺序设成了「先行后列」(先往右打完再往下)。在「工作表」选项卡里有一个打印顺序的选项,改成「先列后行」,翻页顺序就正常了。这个设置平时不用管,但一旦遇到顺序乱的情况就知道去哪调。
| 细节 | 设置 | 用途 |
|---|---|---|
| 错误值显示 | 工作表选项卡设置 | 避免打印出 #N/A |
| 页码总页数 | 页脚代码 &P 和 &N |
自动编号 |
| 文件名和日期 | 页脚代码 &F 和 &D |
正式报表规范 |
| 打印顺序 | 工作表选项卡 | 宽表翻页顺序 |
| 打印批注 | 工作表选项卡 | 带说明的表 |
一次配置,长期复用
打印这块有一个跟本书其他章节不太一样的性质:它的收益主要来自「一次配好、长期复用」,而不是「每次操作快一点」。快捷键在这里的作用是把配置的过程缩短,以及让你更愿意每次都检查一下。
所以我对这部分的建议是分两步走:
第一步是积累你自己的打印模板。仔细想想你经常做的表有哪几类(比如月报、台账、报价单),每一类挑一个做好的文件,把页面设置调到位,另存为模板。以后再做这类表,从模板开始,页面设置全都对,只需要填数据。
第二步是专项处理那些「一页装不下」的表。这类表最花时间,也最需要键盘操作。处理的核心手段是藏掉不该打印的列、设好打印区域和标题行、缩放调到一页宽。这套动作在页面设置里走一遍,用 Ctrl+Tab 在选项卡间切换,比用鼠标点来点去快不少,而且不容易漏设置。
这里有一个配置上的小建议:把「打印预览」和「页面设置」放到快速访问工具栏。这两个命令你每天都要用,放到工具栏后用 Alt 加数字就能直接到,不用每次都 Ctrl+P 进预览再找设置入口。工具栏的配置方法见 快速访问工具栏与宏的自定义。
另外,如果你做的表里有很多图表需要一起打印,图表的排版和打印设置也有配合的地方,那部分在 图表与数据透视表的快捷键 里提过。图表的打印位置(浮在表格上还是嵌入单元格)会直接影响打印效果,做之前想清楚。
WPS 与 Excel 的差异
Ctrl+P 在两个软件里都是打印入口,行为一致,可以放心用。差异主要在使用体验上。
WPS 的打印预览界面布局和 Excel 不同,设置项的命名和分组也有差异,但功能基本齐全。页面设置对话框在 WPS 里同样有四个选项卡,逻辑类似,具体措辞可能不一样(比如「顶端标题行」在两家的叫法可能不同)。实际操作时看菜单文字找就行,不难。
比较明显的差异是打印标题和打印区域的设置入口位置。Excel 在工作表选项卡里,WPS 里的位置可能不同,需要找一下。第一次找不到可以在菜单里搜索或者翻一下帮助,找到之后就是固定的位置了。
还有一点关于宏和模板的:如果你做了带页面设置的模板文件,跨软件使用时格式和设置一般是兼容的,因为 .xlsx 格式本身会保存这些信息。但如果模板里有宏,就受宏兼容性的影响,前面那章讲过的限制在这里同样适用。
常见问题
表格被切成好几页,怎么快速让它一页放下
按优先级试三步。第一步,进页面设置(Ctrl+P 预览然后进设置,或者直接从菜单进),在页面选项卡里把方向改成横向,很多时候这一步就够了。第二步,如果还不行,把缩放改成「调整为 1 页宽」,让 Excel 自动算比例,宽度一定会放进一页。第三步,如果缩出来字太小看不清,说明内容确实太多,这时候的正确做法不是继续缩,而是裁内容——隐藏或者删掉不该打印的列,或者把表拆成两份打。
一个反向提醒:不要为了「一页放下」把字号缩到 6 号。一页装下了,但没人看得清,等于白打。宁可分两页,也不要缩到不可读。
第二页开始没有表头,每页都要手动加吗
不用,这就是「打印标题行」功能的用途。在页面设置的工作表选项卡里,把「顶端标题行」设成你表头所在的那一行(比如 $1:$1 或者 $1:$2),以后每一页都会重复这一行。
设置的时候可以在输入框里直接选中工作表上的行,这样最不容易填错。如果表头有两行,就把两行一起选中。设置好之后,打印预览里翻到第二页就能看到表头出现了。
同样的道理,如果你的表是横向展开的,左边的项目名称列需要在每页重复,就设「左端标题列」。这两个设置是长表打印的必备,做一次就一直有效。
打印出来多了一页空白页,怎么删掉
原因通常是「已用区域」比你看到的数据范围更大。某个看不见的地方有残留的格式或者一个空格,把打印范围撑到了第二页。
排查方法:按 Ctrl+End,光标会跳到已用区域的右下角。如果它跳到了远超你数据的地方,那就是有残留。找过去,用 Ctrl+- 删掉那些多余的整行整列,或者选中它们右键删掉格式。
更省事的做法是直接明确指定打印区域:选中你真正要打印的那一块,在页面设置的工作表选项卡里设好打印区域,多余的部分就不会被打印了。这个方法比「找残留」快,而且更可控,我一般推荐先用这一招。
打印出来的每一页都写着「第 1 页」,怎么改成自动页码
因为你在页脚里手工输入了「第 1 页」这几个字,而不是用页码代码。手工输入的内容每一页都一样,代码才会自动变。
正确做法是:在页面设置的页眉页脚选项卡里,点「自定义页脚」(或者类似名字的按钮),在输入框里输入代码。&P 会变成当前页码,&N 会变成总页数。所以你要写的是「第 &P 页 共 &N 页」(中间的空格和文字按你需要加),打印出来就是「第 3 页 共 5 页」这样的效果。
顺便说,常用的代码还有:&D 是当前日期,&T 是时间,&F 是文件名,&A 是工作表名。做正式报表时加上文件名和日期是规范做法,方便别人拿到纸质件后知道这是哪份文件的哪一版。
只想打印表格的一部分,怎么设置
两个做法,看你的需求。
如果这个部分以后每次都要打(比如这是一份固定格式的报表,只打上面的汇总区),用「打印区域」:选中要打印的那块,在页面设置的工作表选项卡里设成打印区域,保存。以后按 Ctrl+P 直接就是这一块。
如果只是这一次想打一部分,有两个更快的办法。一是先在表格里选中要打的区域,然后在 Ctrl+P 的打印设置里选「打印选定区域」。二是临时隐藏不需要的行列(选中后 Ctrl+9 隐藏行,Ctrl+0 隐藏列),打完再取消隐藏。前一个办法不用改动表格,我更推荐。
需要提醒的是,如果只是要打印某一块,记得先确认这一块在纸上能不能放得下、要不要重复表头——因为「打印选定区域」这个设置会让打印标题行失效,你选定的区域里如果没有表头,打出来就没有表头。这种情况下,用打印区域加标题行的组合更靠谱。
页面设置是在文件里还是机器上的,换台电脑还在吗
存在文件里。所有页面设置(方向、边距、打印区域、标题行、页眉页脚)都是跟着工作簿文件保存的,你把文件拷到另一台电脑打开,这些设置原样都在,不需要重设。
这一点跟快速访问工具栏的配置不一样——那个是跟着 Excel 软件或者你的账号走的。所以要区分开:表格的排版设置跟着文件走,个人操作习惯的配置跟着软件走。
正因为页面设置跟着文件走,所以有个实用的做法:把你常用的报表做成模板文件,所有页面设置都配好,以后从模板开始做。这是把配置成本降到零的最有效办法。
