一份月报里二十个图表,标题字体逐个点改,改到第十五个时发现前两个漏了,灰度和别人不一样。下个月数据更新,图表从旧版复制过来,字体又变回默认。于是每次交报告前都要重来一遍,花掉半小时只为了对齐字体。
这件事的根源不在手速,在于 Excel 的字体有两套来源:主题和局部。搞清楚哪一处覆盖哪一处,改一次就能管住全本。
一、先分清两套来源
主题字体是总开关。 Excel 的主题里带两套字体:一套叫“标题字体”,一套叫“正文字体”,每套又分西文与中文两项。图表里的标题、坐标轴、数据标签,默认继承的是“正文”那一套。所以改主题,等于一次改了所有默认继承的地方。
局部设置会覆盖主题。 只要在某个图表标题上手动点过一次字体、字号或颜色,这一处就断开了继承关系。此后无论怎么改主题,它都不跟。这就是“明明改了主题,还有几个图表是老样子”的原因。
复制粘贴会带上源格式。 从别的表格、别的月份复制图表过来,源文件里的字体设置跟着一起进来,包括那些手动设过的。粘贴时选“保留源格式”就更容易带进来。
图表模板会写死格式。 存成 .crtx 的图表模板里带着字体名。用模板新建的图表,从出生起就带着这一层局部设置,主题管不住它。
判断一处是否受主题控制,有个简单试探法。 把主题字体临时换成一款明显不同的字,比如从黑体换成 阿里妈妈数黑体,看图表标题跟不跟着变。跟着变,说明它归主题管;纹丝不动,说明它被局部设置锁住了。这一步比在菜单里翻半天快。
二、改主题字体:一次覆盖整本工作簿
路径是固定的。 “页面布局”选项卡 → “字体” → 拉到最下面点“自定义字体”。弹出的对话框里有两组:标题字体、正文字体,每组各有“西文”和“中文”两个下拉框。
中文那一栏必须单独设。 只改西文,中文仍走原来的字体,图表标题里的汉字不会变。很多人以为主题没生效,其实是漏了这一格。
两组都要设。 图表文字走“正文”,工作表里的表头、大标题走“标题”。只设一组,另一半还是旧字。
设完点保存,起个能认出来的名字。 比如“月报-黑体版”,这个名字会出现在字体列表顶部,下次直接点,不用再进对话框。
要做成默认,走模板这条路。 把这套设置连同版式存成 .xltx 模板,放在模板目录里,以后新建文件都从模板起,主题就固定下来了。直接改主题文件也可以,但版本升级时容易被覆盖,不如模板稳。
主题只有两级,层级靠字号和字重补。 标题与正文两套字体解决不了三级标题。需要三级时,在正文那套里选一款档位齐全的家族,比如 思源黑体 或 阿里巴巴普惠体,用常规、中黑、粗黑三档拉开层级,字形气质不会散。
字体得装在打开文件的机器上。 主题里写的是一个字体名,机器上没有这款字,Excel 会回退到默认字体,别人打开你的报告看到的就是另一副样子。MiSans 与 鸿蒙黑体 这类系统预装率较高的字体,在协作场景里更保险。
三、图表不跟着变的四个坑
坑一:手动设过字体。 最普遍。修法是选中图表,走“图表设计” → “重设以匹配样式”,把局部格式清掉,让它重新回到主题控制。注意这一步会连同颜色、线型一起重置,做过精细配色的图表要先另存一份。
坑二:标题里只有一部分字被改过。 双击图表标题进入编辑状态,全选标题文字再设字体,能把这层富文本格式清掉。只点标题边框选中整个对象,改的是对象级字体,管不到内部的文字段。
坑三:从别处粘贴过来。 复制图表时用“选择性粘贴”,或者干脆重新插入一个图表再绑数据。带格式粘贴进来的图表,重设样式也未必干净,重新建一个更省事。
坑四:用了自定义图表模板。 把常用图表另存为模板之后,模板里的字体就固定了。改完主题要把模板重新存一遍,否则每次套模板都带回旧字体。
还有一种情况:数据标签和坐标轴单独设过。 标题改好了,坐标轴刻度还是旧字。这几处要各自处理,判断方法还是那个试探法——换主题看它跟不跟。
四、批量处理与自检
图表多的时候,用一段宏抹平差异。 下面这段把当前工作表里所有图表的文字统一到指定字体,适合已经被改乱的旧文件:
Sub 统一图表字体()
Dim co As ChartObject
For Each co In ActiveSheet.ChartObjects
With co.Chart
.ChartArea.Font.Name = "思源黑体"
.ChartTitle.Font.Name = "思源黑体"
End With
Next
End Sub
注意它的副作用。 宏写入的是具体字体名,等于给每个图表加了一层局部设置。跑完之后再改主题,这些图表不会跟随。所以顺序是:先用宏把旧文件抹平,再决定是继续用显式字体,还是重设样式回到主题。两者选一条,别混着用。
自检用三步。 第一步,把主题字体换成一款差异明显的字,全表扫一眼,看还有没有不跟着变的图表;第二步,用“选择窗格”数一遍图表总数,和目录页对得上;第三步,导出 PDF 后看字体面板,正常应该只剩两三款字体,出现四五款就说明有漏网的局部设置。
导出前还有两件事。 PDF 导出时勾选嵌入字体,避免对方机器上回退;如果报告要贴进 PPT 或截图使用,图表字号别小于 9 点,缩到 60% 时仍能看清。
五、授权说明
办公文档用字体,容易觉得“内部使用不算对外”,实际要看这份文件怎么走。核验按三步走。
第一步,确认字体全名。 同一系列常分多个字重与字符集版本,主题里写的是全名,装错版本会静默回退。带 GB、GBK、VF 后缀的与基础版不是同一份文件,选字体前把名字看全。
第二步,查协议类型。 常见几类:开源协议(SIL OFL、MIT、GPL)、作者声明免费商用、随包附带的免费商用声明、带保留字体名称条款的授权。开源协议的条件写在正文里,作者声明的范围由声明自身界定。猫啃网收录的 839 款免费中文字体,协议类型在下载页有标注,选主题字体时顺手对照一下。
第三步,核使用场景。 只在公司内部传阅的报告,与发给客户、发到公众号、印成纸质册子的报告,性质不同。对外发布的文件里嵌了字体,属于复制与传播;把图表截图做成对外广告物料,又往商业使用的方向靠一步。这几类要分开确认。
留凭证。 把主题里用的字体全名、版本号、获取日期、许可页面截图记一份,和模板放在一起。换人接手时,看这份记录就知道模板里的字能不能继续用。
六、FAQ
问:改了主题字体,为什么还有两三个图表是老样子?
那几处被手动设过字体,断开了继承。选中图表用“重设以匹配样式”清掉局部格式,或者用宏统一一遍。清完之后再改主题才会生效。
问:主题字体改了,同事打开文件却说字体不对。
他机器上没装这款字,Excel 回退到了默认字体。要么换成预装率高的字体,要么把字体嵌进文件,要么导出 PDF 再发。
问:图表标题想用一款有性格的字,正文用另一款,能做到吗?
可以。主题里“标题字体”和“正文字体”是两套,标题那套单独设成有性格的字,正文保持常规黑体。但图表内部文字默认走正文,想把图表标题也换成标题字,只能单独设,设完就不再跟随主题。
问:每次新建工作簿都要重设一遍主题,太麻烦。
把这套设置存成 .xltx 模板,从模板新建就带着。或者把主题另存为 .thmx,新建时在“页面布局 – 字体”里点一下也能套上。
小结
统一 Excel 图表字体,先认两套来源:主题管默认继承,局部设置会覆盖主题。改法是在“页面布局 – 字体 – 自定义字体”里把标题与正文、西文与中文四格都设好,存成主题或模板。改完仍有图表不跟,按四个坑排查:手动设过、标题内部分字被改、从别处粘贴、自定义模板写死。数量多就用宏抹平,但要知道它会写死字体名。导出前看 PDF 字体面板,剩两三款才算干净。授权那栏照旧:全名、类型、场景,凭证留好。
猫啃网

