字体

Font(name='Calibri', size=11, bold=False,italic=False,vertAlign=None, underline='none',strike=False, color='FF000000')

参数 说明
name 字体名称,注意中文字体前面加u
size 字号大小
bold True(加粗)/ False(不加粗)
italic True(倾斜)/ False(不倾斜)
vertAlign 'None'(默认)/ 'superscript'(上标)/ 'subscript'(下标)
underline 'None'(默认)/ 'single'(单下划线)/ 'double'(双下划线)/ 'singleAccounting'(会计用单下划线)/ 'doubleAccounting'(会计用双下划线)
strike 'True'(显示删除线)/ 'False'(不显示删除线)
color HEX数值
import openpyxl as vb
路径 = r'c:/test.xlsx'
工作簿 = vb.load_workbook(路径)
工作表 = 工作簿['Sheet1']
字体对象 = vb.styles.Font(name=u'微软雅黑', bold=True, italic=True, size=72)
工作表['A1'].font = 字体对象
字体对象2 = vb.styles.Font(name=u'隶书', bold=False, italic=False, size=48)
工作表['A2'].font = 字体对象2

对齐 Alignment

Alignment(horizontal='general',vertical='bottom', text_rotation=0, wrap_text=False, shrink_to_fit=False, indent=0)

参数 说明
horizontal 'general'(常规)/ 'justify'(两端对齐)/ 'right'(靠右)/ 'centerContinuous'(跨列居中)/ 'distributed'(分散对齐)/ 'fill'(填充)/ 'center'(居中)/ 'left'(靠左)
vertical 'center'(垂直居中)/ 'top'(靠上)/ 'bottom'(靠下)/ 'justify'(两端对齐)/ 'distributed'(分散对齐)
text_rotation 指定文本旋转角度
wrap_text 是否自动换行
shrink_to_fit 是否缩小字体填充
indent 指定缩进

边框

Side(style=连线样式,color=边线颜色)

Border(left=左边线样式,right=右连线样式,top=上边线样式,bottom=下边线样式)

参数 说明 参数 说明
double mediumDashDotDot
slantDashDot dashDotDot
dotted hair
mediumDashed dashed
dashDot thin
mediumDashDot medium
thick
import openpyxl as vb
路径 = r'c:/test.xlsx'
工作簿 = vb.load_workbook(路径)
工作表 = 工作簿['Sheet1']
side = vb.styles.Side(style='thin',color='FF000000')
border = vb.styles.Border(left=side,right=side,top=side,bottom=side)
工作表['A1'].border = border
工作簿 .save(路径)

填充PatternFill

PatternFill(fill_type=None, start_color='FFFFFFFF', end_color='FF000000')

fill_type:

参数 说明 参数 说明
None 不填充 solid 实心填充
darkGray 75%灰色 mediumGray 50%灰色
lightGray 25%灰色 gray125 12.5%灰色
gray0625 6.25%灰色 darkHorizontal 水平条纹
darkVertical 垂直条纹 darkDown 逆对角线条纹
darkUp 对角线条纹 darkGrid 对角线剖面线
darkTrellis 粗对角线剖面线 lightHorizontal 细水平条纹
lightVertical 细垂直条纹 lightDown 细逆对角线条纹
lightUp 细对角线条纹 lightGrid 细水平剖面线
lightTrellis 细对角线剖面线

start_color / fgColor:背景颜色

end_color / bgColor:图案颜色

渐变填充

GradientFill(stop=(渐变颜色1,渐变颜色2,….))

参数 说明
fill_type 'linear'(线性渐变)/ 'path'(中心扩散)
degree 旋转角度
stop 一个元组 (OO, XX),OO 为起始颜色,XX 为结束颜色

锁定单元格和隐藏公式

Protection(locked=True, hidden=False)

locked:指定是否锁定单元格

hidden:指定是否隐藏公式

行高和列宽

import openpyxl as vb
路径 = 'c:/test.xlsx'
工作簿 = vb.load_workbook(路径,data_only=True)
工作表 = 工作簿['Sheet1']
工作表.row_dimensions[1].height = 200
工作表.column_dimensions['B'].width = 100
工作簿.save(路径)