Python无废话-办公自动化Excel格式美化

设置字体

在使用openpyxl 处理excel 设置格式,需要导入Font类,设置Font初始化参数,常见参数如下:

|-----------|----------|-----------------------------------|
| 关键字参数 | 数据类型 | 描述 |
| name | 字符串 | 字体名称,如'Calibri'或'Times New Roman' |
| size | 整型 | 大小点数 |
| bold | 布尔型 | True 表示粗体 |
| italic | 布尔型 | True 表示斜体 |
| color | 字符串 | 如 "FF0000" 表示红色 |
| underline | 字符串 | 可选值有 "none"、"single"、"double" 等 |

import openpyxl

from openpyxl.styles import Font

workbook = openpyxl.load_workbook("data\input\Test.xlsx")

worksheet = workbook.active

#创建一个 Font 对象

italicFont=Font(size=24,italic=True)

#设置 A3 单元格的字体为所创建的字体对象

worksheet["A3"].font=italicFont

workbook.save("data\input\Test.xlsx")

设置行高和列宽

Worksheet 对象有row_dimensions 和column_dimensions 属性,分别用于设置行和列的尺寸。

row_dimensions:是一个字典,存储了所有行的尺寸信息。其key是行索引(从1开始),value是一个RowDimension对象,通过该对象可以设置行的高度、隐藏行等属性。

column_dimensions:也是一个字典,存储了所有列的尺寸信息。其key是列索引(从'A'开始),value是一个ColumnDimension对象,通过该对象可以设置列的宽度、隐藏列等属性。

RowDimension对象属性包括

height:行高度

hidden:是否隐藏行

outline_level:行的大纲级别

collapsed:该行是否折叠

ColumnDimension****对象属性包括

width:列宽度

hidden:是否隐藏列

bestFit:自动调整列宽以适应内容

outline_level:列的大纲级别

collapsed:该列是否折叠

示例代码

import openpyxl

workbook = openpyxl.load_workbook("data\input\Test.xlsx")

worksheet = workbook.active

#设置第二行 行高50

worksheet.row_dimensions[2].height=50

#设置C列 列宽50

worksheet.column_dimensions["C"].width=50

workbook.save("data\input\Test.xlsx")

设置合并与拆分单元格

利用merge_cells()工作表方法,可以将一个矩形区域中的单元格合并为一个单元格

利用unmerge_cells()工作表方法,可以将合并单元格进行拆分

import openpyxl

workbook = openpyxl.load_workbook("data\input\Test.xlsx")

worksheet = workbook.active

#设置合并单元格区域A20:B50

worksheet.merge_cells("A20:B50")

#拆分单元格区域A20:B50

worksheet.unmerge_cells("A20:B50")

#设置拆分后单元格的值

worksheet["A20"].value="test"

workbook.save("data\input\Test.xlsx")

相关推荐
子午17 分钟前
【海洋生物识别系统】Python+深度学习+人工智能+算法模型+图像识别+tensoflow+2026计算机毕设项目
人工智能·python·深度学习
七夜zippoe18 分钟前
机器学习数学基础:线性代数与概率论深度解析
python·线性代数·机器学习·概率论·优化理论
有味道的男人23 分钟前
除了Python,还有哪些语言可以调用1688商品详情API?
开发语言·python
Sheffield26 分钟前
为什么Django这么慢,却还是Python后端第一梯队呢?
linux·python·django
Go_Zezhou31 分钟前
render网站保存历史记录错误解决
开发语言·git·python·html
~央千澈~1 小时前
抖音弹幕游戏开发之第6集:解析JSON数据·优雅草云桧·卓伊凡
开发语言·python·php
郝学胜-神的一滴1 小时前
深入解析Python中dict与set的实现原理
开发语言·python
ELI_He9991 小时前
ReActor Face NSFW: HTTP Error 502: Bad Gateway
python·comfy
AC赳赳老秦1 小时前
边缘AI落地趋势:DeepSeek在工业边缘节点的部署与低功耗优化技巧
人工智能·python·算法·云原生·架构·pygame·deepseek
计算机软件程序设计1 小时前
Python读取Excel/CSV到MySQL
python·mysql·excel