作为之前在市分行某个部门的工作人员,经常需要收集、汇总支行上报的数据,有些数据我们要给它汇总到一个表里再上报自治区分行,有些数据我们会原样上报,但是希望数据的格式,也就是表格的样式都是统一的。固然可以一个表一个表的调整,但借助python,可以实现批量调整。
我们通常需要调整excel表的哪些属性呢?比如字体、边框、填充颜色、对齐方式、列宽等等。调整的内容很多,但不能一上来就忙着写代码,而是应该先理清调整的逻辑。我梳理的调整逻辑是:
1.明确excel工作表的构成要素——行、列、单元格。
2.对我们需要调整的属性进行分类归属——哪些属性属于对行的操作,哪些属于对列的操作,哪些属于对单元格的操作?
3.对于同属于一个类的,我们把它放在一起调整。比如调整颜色、边框、对齐方式就属于对单元格的操作,我们可以把它们放到一起调整。
在这里,简单梳理具体哪些属性是属于行的,哪些是属于列的,哪些是属于单元格的。
下面步入今天要解决的问题:如何批量修改excel的行高和列宽。
一、需求
将「支行数据汇总」文件夹下的所有excel表的行高与列宽设置为统一格式(单位为“磅”):
-
行高:第1行30,其余行15;
-
列宽:A列10,BCF列15,D列8,E列20。
二、思路
-
借助os.listdir()函数及for循环,实现逐一获取excel的存储路径。
-
借助load_work打开工作簿,借助工作簿的active属性打开工作表。
-
设置行高。这里有个注意事项,因为每个excel的最后一行行号不确定,所以需要借助工作表的max_row属性获取最后一行的行号,然后使用for循环,从第二行开始逐行修改行高(因为从第二行开始往后所有行的行高一致)。
-
设置列宽。
网友评论