python在excel表里如何新增一列或者一行?新增之后,公式和合并单元格会怎样变化?

首先导入openpyxl库,即:

import openpyxl as op

然后打开你已有的excel,即:

wb=op.open('新增一列.xlsx')#打开新增一列.xlsx这个工作簿
ws=wb['Sheet1']#打开Sheet1这个工作表

我的原文件是这样:

python在excel表里如何新增一列或者一行?新增之后,公式和合并单元格会怎样变化?_第1张图片

可以看到,该文件既有合并单元格又有公式,这种情况下新增列或者新增行会怎么样呢?我做了个小测试

ws.insert_cols(2,3)#给原第2列前面插入3列
ws.insert_rows(3,4)#给原第3行前面插入4行
wb.save('新增一列测试.xlsx')#保存修改

代码运行结果如下:

python在excel表里如何新增一列或者一行?新增之后,公式和合并单元格会怎样变化?_第2张图片

可以看出,公式引用的还是原来的单元格位置,而合并单元格不会随着行数的增加而变化,也就是说,新增行或者列对于合并单元格不起作用。

你可能感兴趣的:(python操作excel,python,excel)