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

百度搜索问题:python复制Excel中的sheet到另外一个工作簿

其中一篇文章:

地址:https://blog.csdn.net/lingan_hong/article/details/72765116

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

python,将test1的Sheet1通过“跨文件”复制到test2的Sheet2里面。

包括谷歌没有能搜出这种问题答案。 
我们贴出代码。

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

import openpyxl
import os
os.chdir("/Users/gonghongwei/Desktop/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']


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

 

注意,我的代码会覆盖掉本来excel中的内容。 
如何你的excel是动态的,可以自己写一个vb脚本,先清空excel再去运行python脚本。

最后,请参考openpyxl这个包的文档: 
https://media.readthedocs.org/pdf/openpyxl/latest/openpyxl.pdf

 
posted @ 2018-07-17 00:22  panda1996  阅读(10547)  评论(0编辑  收藏  举报