python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > Python设置Excel页眉和页脚

使用Python设置Excel页眉和页脚的操作代码

作者:大丸子

在实际的商务报表和数据文档处理中,页眉和页脚是提升文档专业性和可读性的重要元素,通过合理设置页眉页脚,可以展示公司名称、文档标题、页码、日期等关键信息,本文将介绍如何使用 Python 程序化地设置 Excel 工作表的页眉和页脚主题,实现自动化文档格式化

引言

在实际的商务报表和数据文档处理中,页眉和页脚是提升文档专业性和可读性的重要元素。通过合理设置页眉页脚,可以展示公司名称、文档标题、页码、日期等关键信息,让打印输出的 Excel 表格更加规范和专业。然而,手动为每个工作表设置页眉页脚不仅耗时,还容易出错,特别是在需要批量处理多个文件时。

本文将介绍如何使用 Python 程序化地设置 Excel 工作表的页眉和页脚主题,实现自动化文档格式化。通过代码方式,你可以快速统一多个工作表的样式,或者根据不同业务需求动态生成个性化的页眉页脚内容。

本文使用的方法需要用到免费的 Free Spire.XLS for Python,可通过 pip 安装:

pip install spire.xls.free

1. 基础文本设置:添加简单的页眉和页脚

最基础的页眉页脚设置是直接添加文本内容。Spire.XLS 提供了 LeftHeaderCenterHeaderRightHeader 以及对应的 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()

说明:

此步骤展示了最基本的文本设置方法,适用于简单的文档标识需求。

2. 字体格式化:自定义页眉页脚的样式

为了让页眉页脚更加醒目和专业,你可以自定义字体名称、字号、粗细和颜色。Spire.XLS 使用特殊的格式字符串来控制这些样式属性。

说明:

这种格式化方式让你能够创建与品牌风格一致的文档主题,提升企业形象的专业度。

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()

说明:

这种设计让文档结构更加清晰,首页突出主题,内页提供导航信息。

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()

说明:

通过奇偶页差异化设置,可以让打印输出的文档达到出版级的专业水准。

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()

说明:

提示:如果需要在首页使用不同的 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"&14&B&K0000FF 这是蓝色加粗的14号Arial字体文本
&R第 &P 页 / 共 &N 页

总结

通过本文的五个示例,你已经掌握了使用 Python 设置 Excel 页眉和页脚主题的完整技能:

相比手动在 Excel 中逐个设置,代码方式具有显著优势:

你可以在此基础上扩展更多能力,例如:

如果你正在处理企业报表、财务报告、项目文档等需要规范化输出的场景,这种基于 Python 的自动化方案将为你的工作效率带来显著提升。

以上就是使用Python设置Excel页眉和页脚的操作代码的详细内容,更多关于Python设置Excel页眉和页脚的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文