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

yipeiwu_com7年前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删除windows垃圾文件的方法

本文实例讲述了Python删除windows垃圾文件的方法。分享给大家供大家参考。具体如下: #coding:utf-8 import os #from glob import gl...

django session完成状态保持的方法

django session完成状态保持的方法

本例使用登录页面演示,session的状态保持功能。 说明:因为http是无状态的,客户端请求一次页面后,就结束了,当再次访问时,服务器端并不知道浏览器此访问过什么。所以这样就需要状态保...

Windows下python3.7安装教程

Windows下python3.7安装教程

记录了Windows安装python3.7的详细过程,供大家参考,具体内容如下 1. 在python的官网下载python对应版本:官网地址 64位下载Windows x86-64 ex...

python实现线程池的方法

本文实例讲述了python实现线程池的方法。分享给大家供大家参考。具体如下: 原理:建立一个任务队列,然多个线程都从这个任务队列中取出任务然后执行,当然任务队列要加锁,详细请看代码 文件...

Python的argparse库使用详解

argparse是python标准库里面用来处理命令行参数的库 命令行参数分为位置参数和选项参数: 位置参数就是程序根据该参数出现的位置来确定的 如:[root@openstack...