您的位置:首页 > 编程语言 > Python开发

python实现跨excel的工作表sheet之间的复制

2017-05-26 11:42 1031 查看
python,将test1的Sheet1通过“跨文件”复制到test2的Sheet2里面。

包括谷歌没有能搜出这种问题答案。

我们贴出代码。

我们加载openpyxl这个包来解决:

from openpyxl import load_workbook

filename = 'test1.xlsx'
filename2 = 'test2.xlsx'

def replace_xls(sheetname):

wb = load_workbook(filename)
wb2 = load_workbook(filename2)

ws = wb[sheetname]
ws2 = wb2[sheetname]

#两个for循环遍历整个excel的单元格内容
for i,row in enumerate(ws.iter_rows()):
for j,cell in enumerate(row):
ws2.cell(row=i+1, column=j+1, value=cell.value)

wb2.save(filename2)

sheetnames = [u'Sheet1',u'Sheet2',u'Sheet3',u'Sheet4']

#遇到复制几十个sheet时候,很有必要写个循环
for sheetname in sheetnames:
replace_xls(sheetname)


注意,我的代码会覆盖掉本来excel中的内容。

如何你的excel是动态的,可以自己写一个vb脚本,先清空excel再去运行python脚本。

最后,请参考openpyxl这个包的文档:

https://media.readthedocs.org/pdf/openpyxl/latest/openpyxl.pdf
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: