Python利用openpyxl库设置xlsx文件格式
常用函数
合并单元格
合并后只会保留最左上角单元格的内容
sheet.merge_cells('A1:C1')
设置字体
font = Font(name='宋体', size=24, bold=True)
cell_d2.font = font
| 关键字参数 | 数据类型 | 描述 |
|---|---|---|
name |
字符串 | 字体名称,如 'Calibri'、'微软雅黑'、'SimSun'(宋体)等 |
size |
整型 | 字体大小(点数),默认值为 11 |
bold |
布尔型 | 是否加粗,True 表示粗体,默认 False |
italic |
布尔型 | 是否斜体,True 表示斜体,默认 False |
color |
字符串 | 字体颜色,通常使用十六进制 RGB 值表示(如 "FF0000" 表示红色,"0000FF" 表示蓝色) |
underline |
字符串 | 下划线样式,可选值包括 "none"、"single"、"double"、"singleAccounting"、"doubleAccounting" 等 |
strike / strikethrough |
布尔型 | 是否使用删除线,True 表示启用,默认 False |
vertAlign |
字符串 | 垂直对齐方式(如上下标) |
family |
整型 | 字体族 |
charset |
整型 | 字符集 |
scheme |
字符串 | 字体方案 |
outline |
布尔型 | 是否为轮廓字体 |
shadow |
布尔型 | 是否有阴影 |
condense |
布尔型 | 是否紧缩 |
extend |
布尔型 | 是否扩展 |
设置边框
thin_side = Side(border_style="thin", color="000000")
border = Border(
left=thin_side,
right=thin_side,
top=thin_side,
bottom=thin_side
)
cell_d2.border = border
设置单列列宽
单位:字符
sheet.column_dimensions['D'].width = 25 # D列列宽
设置行高
单位:磅
sheet.row_dimensions[2].height = 30 # 第二行行高
设置背景颜色
sheet['E5'] = "表格内容E5"
定义一个黄色实心背景
yellow_fill = PatternFill(start_color="FFFF00", end_color="FFFF00", fill_type="solid")
sheet['E5'].fill = yellow_fill
自动缩小字体适应表格
sheet['G3'] = "表格内容G3表格内容G3"
sheet.column_dimensions['G'].width = 15 # D列列宽
sheet['G3'].alignment = Alignment(shrink_to_fit=True)
gitee地址
python-learning-notes: 这里是我的Python学习小仓库~ 装着我练手的各种代码:读Excel、发请求、处理数据…… 按不同库建了文件夹,边学边记,慢慢积累✨

浙公网安备 33010602011771号