用python openpyxl合并多个excel文件

这篇博客介绍了如何使用Python脚本合并多个Excel文件,特别提到了当文件较大时,使用mergeexcel软件能有效提高合并效率。文中提供的Python代码适用于小规模文件合并,主要涉及openpyxl库的操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我这里将最后的输出文件命名为“最终合并.xlsx”,然后待合并的文件则是一些来自oracle的各个查询结果.xlsx,大家参考一下就行了,根据自己的实际需要对脚本进行修改。合并excel这件事,本身python并不是很擅长,如果excel文件比较大(比如有几十万行或以上的数据)那么合并起来是非常耗时间的,后来我找到了一个软件叫做mergeexcel,用起来还不错,合并几十万行几百万行的excel文件有奇效。

如果平时的excel文件也就几百几千行的话,那直接使用python得了。

from openpyxl import Workbook
from openpyxl import load_workbook
import os

path = os.getcwd()

fs = []

outname = '最终合并.xlsx'
if not os.path.exists(os.getcwd() + '\\' + outname):
	wb = Workbook()
	ws = wb.active
	wb.save(outname)

wbo = load_workbook(outname)
wso = wbo.active
for f in os.listdir(path):
	if f.endswith('.xlsx') and '查询结果' in f:
		fs.append(f)


wbt = load_workbook(fs[1])
wst = wbt.active
max_row = wst.max_row
max_column = wst.max_column
for i in range(1,max_row+1):
	for j in range(1,max_column+1):
		v = wst.cell(i,j).value
		if v:
			wso.cell(i,j,v)
wbo.save(outname)
print('合并完成...')

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值