Python openpyxl为Excel设置行高或者列宽

768次阅读
没有评论

在excel中设置行高或者列宽的基本操作大家都会,但是使用openpyxl就被难住了。今天小编就为大家讲解如何使用 openpyxl为 Excel设置行高或者列宽。

openpyxl 的 Worksheet 对象拥有 row_dimensions 和 column_dimensions 属性,可分别用于控制行高和列宽。

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

</pre>
运行结果:

<img loading="lazy" class="aligncenter size-full wp-image-11254" src="https://www.python51.com/wp-content/uploads/2021/04/1603788891772279.png" width="526" height="258" srcset="https://www.python51.com/wp-content/uploads/2021/04/1603788891772279.png 526w, https://www.python51.com/wp-content/uploads/2021/04/1603788891772279-240x118.png 240w, https://www.python51.com/wp-content/uploads/2021/04/1603788891772279-400x196.png 400w" sizes="(max-width: 526px) 100vw, 526px" />
<ul style="list-style-type: disc;">
 	<li>row_dimensions 可以通过 Excel 行编号(1,2……)来获取行对象,这样我们就可以设置其行高。</li>
 	<li>同理,column_dimensions 可以通过 Excel 列编号(A,B……)来获取列对象,得到列对象之后,我们就可以设置其列宽啦。</li>
 	<li>Excel 默认行高为 13.5;默认列宽为 8.38。</li>
</ul>
发现了一个有趣的现象,即在代码层面,把行高与列宽强行设置为 0,实际上却并不为 0。

# 设置行高为 0 sheet[‘A3’] = ‘行高被设置为 0,实际为 15’ sheet.row_dimensions[3].height = 0 # 设置列宽为 0 sheet[‘D3’] = ‘列宽被设置为 0,实际为 8.38’ sheet.column_dimensions[‘D’].width = 0
<pre class="brush:js;toolbar:false">

运行结果:

Python

也就是说,列宽最小值为 8.38;而行高最小值为 15。

今天的内容简单而且有趣,学会了的小伙伴可以尝试着改变行高和列宽啦。

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:wuyou2021-06-08发表,共计744字。
新手QQ群:570568346,欢迎进群讨论 Python51学习