在excel中设置行高或者列宽的基本操作大家都会,但是使用openpyxl就被难住了。今天小编就为大家讲解如何使用 openpyxl为 Excel设置行高或者列宽。openpyxl 的 Worksheet 对象拥有 row_dimensions 和 column_dimensions 属性,可分别用于控制行高和列宽。
1 2 3 4 5 6 7 8 9 10 11 12 13 | <p style= "line-height: 1.75em;" ><span style= "font-family: 微软雅黑, "Microsoft YaHei";" >import openpyxl
wb=openpyxl.Workbook()
sheet=wb.active
# 设置行高
sheet[ 'A1' ]= '行高被设置为 100'
sheet.row_dimensions[1].height=100
# 设置列宽
sheet[ 'B2' ]= '列宽被设置为 50'
sheet.column_dimensions[ 'B' ].width=50
wb.save( 'dimensions.xlsx' )<br></span></p>
|
运行结果:

row_dimensions 可以通过 Excel 行编号(1,2……)来获取行对象,这样我们就可以设置其行高。
同理,column_dimensions 可以通过 Excel 列编号(A,B……)来获取列对象,得到列对象之后,我们就可以设置其列宽啦。
Excel 默认行高为 13.5;默认列宽为 8.38。
发现了一个有趣的现象,即在代码层面,把行高与列宽强行设置为 0,实际上却并不为 0。
1 2 3 4 5 6 7 | <p style= "line-height: 1.75em;" ><span style= "font-family: 微软雅黑, "Microsoft YaHei";" > # 设置行高为 0
sheet[ 'A3' ] = '行高被设置为 0,实际为 15'
sheet.row_dimensions[3].height = 0
# 设置列宽为 0
sheet[ 'D3' ] = '列宽被设置为 0,实际为 8.38'
sheet.column_dimensions[ 'D' ].width = 0<br></span></p>
|
运行结果:

也就是说,列宽最小值为 8.38;而行高最小值为 15。
今天的内容简单而且有趣,学会了的小伙伴可以尝试着改变行高和列宽啦~更多Python实用知识,点击进入PyThon学习网教学中心。