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操作xml文件详细介绍

关于python读取xml文章很多,但大多文章都是贴一个xml文件,然后再贴个处理文件的代码。这样并不利于初学者的学习,希望这篇文章可以更通俗易懂的教如何使用python 来读取xml...

Python实现把数字转换成中文

周末在家,写了个小程序,用于将阿拉伯数字转换化大写中文。程序没经过任何优化,出没经过详细的测试,挂到网上,方便将来有需要的时候直接拿来用。 #!/usr/bin/python #-*...

利用Opencv中Houghline方法实现直线检测

利用Opencv中Houghline方法实现直线检测

利用Opencv中的Houghline方法进行直线检测—python语言 这是给Python部落翻译的文章,请在这里看原文。 在图像处理中,霍夫变换用来检测任意能够用数学公式表达的形状,...

django中间键重定向实例方法

1,定义和注册中间件 在注册的中间件中使用: from django.http import HttpResponseRedirect '''下面的书写方法会陷入死循环,所以必须加判...

解决新django中的path不能使用正则表达式的问题

新版的path 虽然 取代了 之前的url,但是在写路由的时候不能在路由中直接写正则表达式,不然会找不到页面。 解决方法 使用re_path from django.urls imp...