当前位置: 首页 > 办公技巧 > 正文

excel办公技巧general(Python操作Excel系列-OpenPyxl库调整单元格对齐方式及边框设置)

  • 叁碗诸角 叁碗诸角
  • 办公技巧
  • 2023-08-13 20:59:33
  • 0

带你走进 @ 机器人时代

Discover 点击上面蓝色文字关注我们


Python
openpyxl库操作单元格内容对齐需要用到Alignment对象,使用前从styles子模块中引用即可,如下代码:

from openpyxl import load_workbookfrom openpyxl.styles import Alignmentpath='test1.xlsx'wb=load_workbook(path)ws=wb['第一个表']#定位一个单元格c=ws['B4']#设置单元格的对齐方式c.alignment=Alignment(horizontal='right',vertical='center')wb.save('test1.xlsx')

运行后,得到结果:

B4单元格的对齐方式变成了,右对齐,上下居中。这里horizontal属性的参数值如下:


对齐方式

参数值

常规

general

靠左

left

靠右

right

居中

center

填充

fill

两端对齐

justify

跨列居中

centerContinuous

分散对齐

distributed


vertical属性的参数值如下:


对齐方式

参数值

居中

center

向上

top

向下

bottom

分散对齐

distributed

两端对齐

justify


值得注意的是,Alignment对象操作单元格只能一个一个地操作,如果需要设置区域单元格,还是需要使用FOR循环来实现。

from openpyxl import load_workbookfrom openpyxl.styles import Alignmentpath='test1.xlsx'wb=load_workbook(path)ws=wb['第一个表']#定位区域单元格c=ws['B2:E8']for i in c: for j in i: #设置单元格的对齐方式 j.alignment=Alignment(horizontal='right',vertical='center')wb.save('test1.xlsx')

运行后,我们得到如下结果:

如果要设置单元格的边框,我们要用到Side对象和Border对象。

from openpyxl import load_workbookfrom openpyxl.styles import Border,Sidepath='test1.xlsx'wb=load_workbook(path)ws=wb['第一个表']#定位单元格c=ws['B2']#设置一个样式:粗实线s1=Side(border_style='thick',color='0000DD')#设置另外一个样式:点划线s2=Side(border_style='dashDot',color='FF0000')#应用样式到单元格c.border=Border(left=s1,right=s1,top=s2,bottom=s2)wb.save('test1.xlsx')


运行后,我们可以看到如下结果:


如果要设置单元格区域,也是同样的道理,使用FOR循环来实现:

from openpyxl import load_workbookfrom openpyxl.styles import Border,Sidepath='test1.xlsx'wb=load_workbook(path)ws=wb['第一个表']#定位单元格c=ws['B2:G8']#设置一个样式:粗实线s1=Side(border_style='thick',color='0000DD')#设置另外一个样式:点划线s2=Side(border_style='dashDot',color='FF0000')#应用样式到单元格for i in c: for j in i: j.border=Border(left=s1,right=s1,top=s2,bottom=s2)wb.save('test1.xlsx')


运行后得到如下效果:

注意,指定边框的线型有以下参数:


参数

线型

thick

粗实线

dashDot

点划线

double

双划线

mediumDashDotDot

其他点划线(粗)

slantDashDot

其他点划线(粗)

dashDotDot

点划线(细)

thin

细实线

hair

细虚线

dotted

虚线


大家可以自行测试一下。


继续坚持学习,
每天都能进步一点!!!

往期回顾:


来来来,送你一个金牌销售机器人,7X24小时不休,不要工资免费用!不要嫌你现在的工作很累,可能你离失业不远了!作为旅游行业的一个小老板,我受够了!这是要被淘汰的节奏吗?

本文引用和摘录相关内容,请联系侵删。

- END -

最后,文章有帮助到你的话点赞在看
励我们分享更多的干货!


最新文章