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

yipeiwu_com6年前Python基础

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

以上这篇python实现跨excel的工作表sheet之间的复制方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python中将dataframe转换为字典的实例

有时候,在Python中需要将dataframe类型转换为字典类型,下面的方法帮助我们解决这一问题。 任务代码。 # encoding: utf-8 import pandas a...

pytorch点乘与叉乘示例讲解

点乘 import torch x = torch.tensor([[3,3],[3,3]]) y = x*x #x.dot(x) z = torch.mul(x,x) #x.mul...

python日志记录模块实例及改进

python 打印对象的所有属性值: def prn_obj(obj): print '\n'.join(['%s:%s' % item for item in obj.__d...

Python中获取网页状态码的两个方法

第一种是用urllib模块,下面是例示代码: 复制代码 代码如下: import urllib status=urllib.urlopen("//www.jb51.net").code...

浅谈Python的异常处理

 Python的异常处理能力是很强大的,可向用户准确反馈出错信息。在Python中,异常也是对象,可对它进行操作。所有异常都是基类Exception的成员。所有异常都从基类Ex...