使用Python设置Excel页眉和页脚的操作代码
引言
在实际的商务报表和数据文档处理中,页眉和页脚是提升文档专业性和可读性的重要元素。通过合理设置页眉页脚,可以展示公司名称、文档标题、页码、日期等关键信息,让打印输出的 Excel 表格更加规范和专业。然而,手动为每个工作表设置页眉页脚不仅耗时,还容易出错,特别是在需要批量处理多个文件时。
本文将介绍如何使用 Python 程序化地设置 Excel 工作表的页眉和页脚主题,实现自动化文档格式化。通过代码方式,你可以快速统一多个工作表的样式,或者根据不同业务需求动态生成个性化的页眉页脚内容。
本文使用的方法需要用到免费的 Free Spire.XLS for Python,可通过 pip 安装:
pip install spire.xls.free
1. 基础文本设置:添加简单的页眉和页脚
最基础的页眉页脚设置是直接添加文本内容。Spire.XLS 提供了 LeftHeader、CenterHeader、RightHeader 以及对应的 Footer 属性,让你可以在三个位置分别设置不同的文本。
from spire.xls import *
from spire.xls.common import *
# 创建工作簿
workbook = Workbook()
sheet = workbook.Worksheets[0]
# 添加示例数据以展示多页效果
for i in range(1, 50):
sheet.Range[f"A{i}"].Text = f"数据行 {i}"
sheet.Range[f"B{i}"].Text = f"数值 {i * 10}"
# 设置左侧页眉和中间页脚
sheet.PageSetup.LeftHeader = "公司财务报表"
sheet.PageSetup.CenterFooter = "第 &P 页,共 &N 页"
# 设置视图模式为布局视图,便于预览页眉页脚
sheet.ViewMode = ViewMode.Layout
# 保存文件
workbook.SaveToFile("基础页眉页脚.xlsx", ExcelVersion.Version2013)
workbook.Dispose()说明:
- 页眉页脚位置:Excel 支持左、中、右三个位置的页眉和页脚,可以根据需要灵活组合
- 特殊占位符:
&P表示当前页码,&N表示总页数,这些是 Excel 内置的动态字段 - ViewMode 设置:将视图模式设置为
Layout可以在 Excel 中直接看到页眉页脚效果

此步骤展示了最基本的文本设置方法,适用于简单的文档标识需求。
2. 字体格式化:自定义页眉页脚的样式
为了让页眉页脚更加醒目和专业,你可以自定义字体名称、字号、粗细和颜色。Spire.XLS 使用特殊的格式字符串来控制这些样式属性。
说明:
格式字符串语法:
&"字体名"- 设置字体名称,如&"Arial"&字号- 设置字体大小,如&14&B- 加粗,&I- 斜体,&U- 下划线&K颜色代码- 设置字体颜色,使用十六进制 RGB 值,如&K0000FF表示蓝色
- 组合使用:可以将多个格式指令组合在一起,实现丰富的样式效果
- 中文支持:可以使用中文字体名称,如"微软雅黑"、"宋体"等

这种格式化方式让你能够创建与品牌风格一致的文档主题,提升企业形象的专业度。
3. 首页不同:为封面页设置独特的页眉页脚
在很多正式文档中,首页(封面页)需要与其他页面采用不同的页眉页脚设计。例如,首页可能只需要显示文档标题,而其他页面则需要显示页码和公司信息。
from spire.xls import *
from spire.xls.common import *
# 创建工作簿
workbook = Workbook()
sheet = workbook.Worksheets[0]
# 添加跨越多页的数据
for i in range(1, 150):
sheet.Range[f"A{i}"].Text = f"记录 {i}"
sheet.Range[f"B{i}"].Text = f"详情 {i}"
sheet.Range[f"C{i}"].Text = f"备注 {i}"
# 启用首页不同设置
sheet.PageSetup.DifferentFirst = 1
# 设置首页的页眉和页脚
sheet.PageSetup.FirstHeaderString = "&\"Arial\"&18&B&K000080 2024年度综合分析报告"
sheet.PageSetup.FirstFooterString = "" # 首页不显示页脚
# 设置其他页面的页眉和页脚
sheet.PageSetup.LeftHeader = "&\"Arial\"&10 内部资料"
sheet.PageSetup.CenterFooter = "第 &P 页 / 共 &N 页"
# 设置视图模式
sheet.ViewMode = ViewMode.Layout
# 保存文件
workbook.SaveToFile("首页不同页眉页脚.xlsx", ExcelVersion.Version2013)
workbook.Dispose()说明:
- DifferentFirst 属性:设置为
1启用首页不同功能,这样首页可以使用独立的页眉页脚设置 - FirstHeaderString / FirstFooterString:专门用于设置首页的页眉和页脚内容
- 应用场景:适用于报告、提案、合同等需要封面的正式文档
- 灵活性:首页可以完全不设置页脚(空字符串),让版面更加简洁

这种设计让文档结构更加清晰,首页突出主题,内页提供导航信息。
4. 奇偶页不同:双面打印的专业排版
当文档需要双面打印装订时,奇数页和偶数页的页眉页脚通常需要镜像对称。例如,奇数页的公司名称在右侧,偶数页则在左侧,这样装订后阅读体验更好。
from spire.xls import *
from spire.xls.common import *
# 创建工作簿
workbook = Workbook()
sheet = workbook.Worksheets[0]
# 添加大量数据以产生多页
for i in range(1, 200):
sheet.Range[f"A{i}"].Text = f"项目编号 {i:04d}"
sheet.Range[f"B{i}"].Text = f"项目名称 {i}"
sheet.Range[f"C{i}"].Text = f"状态:进行中"
# 启用奇偶页不同设置
sheet.PageSetup.DifferentOddEven = 1
# 设置奇数页的页眉和页脚(右侧显示)
sheet.PageSetup.OddHeaderString = "&\"Arial\"&11&B&K0066CC 项目管理手册"
sheet.PageSetup.OddFooterString = "&R第 &P 页"
# 设置偶数页的页眉和页脚(左侧显示)
sheet.PageSetup.EvenHeaderString = "&\"Arial\"&11&B&KFF8800 项目管理手册"
sheet.PageSetup.EvenFooterString = "&L第 &P 页"
# 设置视图模式
sheet.ViewMode = ViewMode.Layout
# 保存文件
workbook.SaveToFile("奇偶页不同页眉页脚.xlsx", ExcelVersion.Version2013)
workbook.Dispose()说明:
- DifferentOddEven 属性:设置为
1启用奇偶页不同功能 - OddHeaderString / OddFooterString:设置奇数页(1, 3, 5...)的页眉页脚
- EvenHeaderString / EvenFooterString:设置偶数页(2, 4, 6...)的页眉页脚
- 对齐控制:
&L表示左对齐,&C表示居中对齐,&R表示右对齐 - 双面打印优化:这种设置特别适合需要装订成册的文档,确保左右页边距对称

通过奇偶页差异化设置,可以让打印输出的文档达到出版级的专业水准。
5. 图片插入:在页眉页脚中添加公司 Logo
除了文本,你还可以在页眉页脚中插入图片,最常见的是公司 Logo。这样可以增强文档的品牌识别度,让所有输出文档保持一致的企业形象。
from spire.xls import *
from spire.xls.common import *
# 创建工作簿
workbook = Workbook()
sheet = workbook.Worksheets[0]
# 添加示例数据
for i in range(1, 80):
sheet.Range[f"A{i}"].Text = f"订单编号 {i:06d}"
sheet.Range[f"B{i}"].Text = f"客户名称 {i}"
sheet.Range[f"C{i}"].Text = f"金额 ¥{i * 500:.2f}"
# 加载图片文件
imageStream = Stream("company_logo.png") # 替换为你的Logo图片路径
# 设置左侧页眉图片
sheet.PageSetup.LeftHeaderImage = imageStream
sheet.PageSetup.LeftHeader = "&G" # &G 是图片占位符
# 设置中间页脚图片
sheet.PageSetup.CenterFooterImage = imageStream
sheet.PageSetup.CenterFooter = "&G"
# 同时添加文本页眉
sheet.PageSetup.RightHeader = "&\"Arial\"&12 销售数据报表"
# 设置视图模式
sheet.ViewMode = ViewMode.Layout
# 保存文件
workbook.SaveToFile("图片页眉页脚.xlsx", ExcelVersion.Version2013)
workbook.Dispose()说明:
- 图片加载:使用
Stream类从文件路径加载图片,支持 PNG、JPG 等常见格式 - 图片属性:
LeftHeaderImage、CenterHeaderImage、RightHeaderImage分别对应三个位置的图片 - 占位符 &G:在文本属性中使用
&G表示在此位置显示图片 - 图文结合:可以同时设置图片和文本,实现更丰富的视觉效果
- 图片尺寸:建议准备适当尺寸的图片(通常高度不超过 50 像素),避免过大影响布局

提示:如果需要在首页使用不同的 Logo,可以结合 DifferentFirst 属性和 SetFirstLeftHeaderImage() 方法实现。
关键类与方法解析
PageSetup 类
PageSetup 是 Spire.XLS 中管理页面设置的核心类,包含页眉页脚、页边距、纸张方向等所有页面相关配置。
主要属性和方法:
| 属性/方法 | 说明 | 用途 |
|---|---|---|
LeftHeader / CenterHeader / RightHeader | 获取或设置左/中/右页眉文本 | 设置常规页眉内容 |
LeftFooter / CenterFooter / RightFooter | 获取或设置左/中/右页脚文本 | 设置常规页脚内容 |
FirstHeaderString / FirstFooterString | 获取或设置首页页眉页脚文本 | 首页独特设计 |
OddHeaderString / OddFooterString | 获取或设置奇数页页眉页脚文本 | 双面打印奇数页 |
EvenHeaderString / EvenFooterString | 获取或设置偶数页页眉页脚文本 | 双面打印偶数页 |
LeftHeaderImage / CenterHeaderImage / RightHeaderImage | 获取或设置页眉图片 | 插入 Logo 等图片 |
LeftFooterImage / CenterFooterImage / RightFooterImage | 获取或设置页脚图片 | 页脚图片装饰 |
DifferentFirst | 启用/禁用首页不同功能 | 控制首页独立性 |
DifferentOddEven | 启用/禁用奇偶页不同功能 | 控制双面打印排版 |
SetFirstLeftHeaderImage() | 设置首页左侧页眉图片 | 首页专属图片 |
SetFirstLeftFooterImage() | 设置首页左侧页脚图片 | 首页专属图片 |
HeaderMarginInch | 设置页眉边距(英寸) | 调整页眉与内容的距离 |
FooterMarginInch | 设置页脚边距(英寸) | 调整页脚与内容的距离 |
格式字符串语法详解
页眉页脚文本支持特殊的格式指令,可以实现丰富的样式效果:
字体控制:
&"字体名"- 设置字体,如&"Arial"、&"微软雅黑"&字号- 设置字号,如&12、&14
样式控制:
&B- 加粗(Bold)&I- 斜体(Italic)&U- 下划线(Underline)&E- 双下划线&S- 删除线
颜色控制:
&K颜色代码- 设置颜色,使用六位十六进制 RGB 值&K000000- 黑色&KFF0000- 红色&K0000FF- 蓝色&K008000- 绿色
对齐控制:
&L- 左对齐&C- 居中对齐&R- 右对齐
动态字段:
&P- 当前页码&N- 总页数&D- 当前日期&T- 当前时间&F- 文件名&A- 工作表名称&G- 图片占位符
组合示例:
&"Arial"&14&B&K0000FF 这是蓝色加粗的14号Arial字体文本 &R第 &P 页 / 共 &N 页
总结
通过本文的五个示例,你已经掌握了使用 Python 设置 Excel 页眉和页脚主题的完整技能:
- 基础文本设置 - 快速添加简单的页眉页脚内容
- 字体格式化 - 自定义字体、大小、颜色和样式,打造专业外观
- 首页不同 - 为封面页设计独特的页眉页脚,提升文档层次感
- 奇偶页不同 - 优化双面打印效果,达到出版级排版标准
- 图片插入 - 添加公司 Logo,强化品牌识别度
相比手动在 Excel 中逐个设置,代码方式具有显著优势:
- 效率高:一行代码即可应用到整个工作簿
- 一致性强:确保所有文档使用统一的样式标准
- 可复用:保存代码模板,随时应用于新项目
- 批量化:可以轻松处理数十甚至数百个文件
- 动态化:可以根据数据内容自动生成个性化的页眉页脚
你可以在此基础上扩展更多能力,例如:
- 结合循环批量处理文件夹中的所有 Excel 文件
- 根据工作表名称动态生成不同的页眉内容
- 从数据库读取公司信息自动填充到页眉页脚
- 创建配置文件管理不同项目的页眉页脚模板
如果你正在处理企业报表、财务报告、项目文档等需要规范化输出的场景,这种基于 Python 的自动化方案将为你的工作效率带来显著提升。
以上就是使用Python设置Excel页眉和页脚的操作代码的详细内容,更多关于Python设置Excel页眉和页脚的资料请关注脚本之家其它相关文章!
相关文章
Python环境管理virtualenv&virtualenvwrapper的配置详解
这篇文章主要介绍了Python环境管理virtualenv&virtualenvwrapper的配置详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-07-07


最新评论