##以下是源码filecombine.py,比较简单,有相应说明,也是结合别的代码自己修改的,用到的包需要提前装好。

# -*- coding: utf-8 -*-

import xlrd
import xlwt
import os
import datetime

#打开一个excel文件
def open_xls(file):
fh=xlrd.open_workbook(file)
return fh

#获取excel中所有的sheet表
def getsheet(fh):
return fh.sheets()

#读取文件内容并返回行内容
def getFilect(file,shnum):
fh = open_xls(file)
table = fh.sheets()[shnum]
num = table.nrows
for row in range(num):
rdata = table.row_values(row)
datavalue.append(rdata)
return datavalue

#获取sheet表的行数
def getnrows(fh,sheet):
table=fh.sheets()[sheet]
return table.nrows

#读取sheet表的个数
def getshnum(fh):
x=0
sh=getsheet(fh)
for sheet in sh:
x += 1
return x

if __name__==’__main__’:
# print(“main”)
rootdir = ‘E:/combinefiles/’
filelist = os.listdir(rootdir) #列出文件夹下所有的目录和文件
#定义要合并的excel文件列表
allxls=[]
# allxls=[‘E:/a.xls’,‘E:/b.xls’]
print(‘Your files:\r’)
for i in range(0,len(filelist)):
path = os.path.join(rootdir,filelist[i])
if os.path.isfile(path):
if path.endswith(’.xls’) or path.endswith(’.xlsx’):
print(’ --’+path)
# if ‘new.xls’ in path:
# print(’ the new.xls already exist, please delete new.xls first!’)
# exit(-1)
allxls.append(path)
# print(allxls)
#存储所有读取的结果
datavalue=[]
for fl in allxls:
fh = open_xls(fl)
x = getshnum(fh)
for shnum in range(x):
print(“reading: “+str(fl)+”'s sheet”+str(shnum+1)+" …")
rvalue = getFilect(fl,shnum)
#定义最终合并后生成的新文件
wb1 = xlwt.Workbook(encoding=‘utf-8’)
#创建一个sheet工作对象
ws = wb1.add_sheet(“sheet1”)
for a in range(len(rvalue)):
for b in range(len(rvalue[a])):
c = rvalue[a][b]
ws.write(a,b,c)
nowTime = datetime.datetime.now().strftime(’%Y%m%d%H%M%S’)
newfileName =‘E:/combinefiles/new-’ + nowTime + ‘.xls’
wb1.save(newfileName)
print(“files combine complete!\n”)
raw_input("####please Enter to quit…###### ")

使用pyinstaller打包成exe:
通过pip install pyinstaller安装pyinstaller包
到filecombine.py 所在目录执行以下 命令打包exe,打包后的exe包括了依赖包,可以跨机器使用。
pyinstaller --onefile --nowindowed filecombine.py
执行结果

通过红框里的路径,可以找到生成 的exe, 双击执行即可。But,but!!!双击前请仔细阅读下面内容:
1.本工具用于完成多个excel文件合并
2.使用前请在E盘创建目前E:\combinefiles目录(程序里写死了,别问为什么写死,这只是个基础实现,完全可以做成可配路径的方式)
3.将需要合并的excel文件复制到E:\combinefiles目录中
4.双击filecombine.exe自动合并文档
5.完成后点击Enter退出即可

#######注意#############
重复使用本工具时,请将E:\combinefiles目录清空后再使用,否则原有文件也会被合并。

Python实现多个excel文件合并源码及打包exe程序相关推荐

  1. python处理多个excel文件-Python将多个excel文件合并为一个文件

    利用Python,将多个excel文件合并为一个文件 思路 利用python xlrd包读取excle文件,然后将文件内容存入一个列表中,再利用xlsxwriter将内容写入到一个新的excel文件中 ...

  2. 一起用python做个炫酷音乐播放器【V3.0含源码及打包exe】

    前言 熟悉的小伙伴都知道,前段时间写了一篇关于音乐播放器的文章–Python自制一款炫酷音乐播放器.不少小伙伴私信我,对播放器提了一些改进建议,对播放器的一些逻辑bug优化完善.今天音乐播放器3.0版 ...

  3. 利用Python将多个excel文件合并为一个文件

    利用Python,将多个excel文件合并为一个文件 思路 利用python xlrd包读取excle文件,然后将文件内容存入一个列表中,再利用xlsxwriter将内容写入到一个新的excel文件中 ...

  4. 【Python】【Tkinter】png转ico小工具源码以及打包exe

    我最近初学Python,学习到了Thinker部分,心血来潮做了一个图片小工具,我感觉我自己好像是码了一座屎山.下面我分几个部分来讲解一下我的思路,以及具体的步骤. 第一步,先看源码: 部分地方我作了 ...

  5. python合并两个excel文件_利用Python将多个excel文件合并为一个文件

    # -*- coding: utf-8 -*- #导入需要使用的包 import xlrd  #读取Excel文件的包 import xlsxwriter   #将文件写入Excel的包 #打开一个e ...

  6. python 生成exe 图片资源_爱豆图片下载(含源码及打包exe可执行文件)

    import requests from lxml import etree import os # etree解析网页并返回 def parse(url): headers = { 'User-Ag ...

  7. 如何利用python整合excel_Python将多个excel文件合并为一个文件

    Python将多个excel文件合并为一个文件 这篇文章主要为大家详细介绍了Python将多个excel文件合并为一个文件,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 思路 利用python x ...

  8. Python读取多个excel文件(删除字段、数据格式转换、dataframe多表合并)并写入ElasticSearch实战(自动创建索引、写入ElasticSearch、探索性数据分析)

    Python读取多个excel文件(删除字段.数据格式转换.dataframe多表合并)并写入ElasticSearch实战(自动创建索引.写入ElasticSearch.探索性数据分析) 目录

  9. python处理多个excel文件-python多个excel文件合并成一个sheet

    运营人员需要历年的订单数据,这就需要把多个文件夹下面的excel文件合并到一个sheet中,之前的解决的办法是用VBA把多个excel文件合并成一个表的多个sheet,再把多个sheet合并成一个sh ...

最新文章

  1. Windows 64位机上C/C++代码静态检查工具Logiscope RuleChecker的安装和使用
  2. DOS命令输出的重定向
  3. 机器学习——逻辑回归算法
  4. mybatis关联配置(一对多配置)
  5. php 5.3 require,PHP5.3提示PHP Wrequire(./xx.php)arning: [function.require]: failed to open stream
  6. Android之Tab分页标签的实现方法--------采用ActivityGroup和GridView的结合
  7. 地域跨度入手的8zsb
  8. java 字节码加载_java面试题jvm字节码的加载与卸载
  9. python 平方根_数的Python平方根
  10. spurious wakeup虚假唤醒
  11. 北斗导航:太空中最亮的“中国星”
  12. 分布式系统 服务 的稳定性
  13. openerp换mysql_OpenERP 源码变更后数据库升级
  14. 微信公众号接入图灵机器人
  15. 制作maven-archeType
  16. 《GhostXP_SP2电脑公司特别版_8.0》
  17. 【论文翻译】使用区块链的非阻塞两阶段提交
  18. 【山东OI选手福利!!!】汇编在Cena中的使用
  19. python读取CSV文件中温度值绘制3D折线图
  20. 1065: 人名查询

热门文章

  1. SCI文章投稿状态一览
  2. 本地化BLAST+进行目标序列比对
  3. 用CE找武林外传一级基址的方法
  4. 最新版VMware 15虚拟机过鲁大师教程
  5. 快餐店促销活动流程,快餐店网络营销方案
  6. 黑莓商务演示应用教程(一)
  7. Scala中Unit、Nothing和Null之间的区别概述
  8. matlab仿真多普勒相移,有关脉冲多普勒雷达的matlab仿真问题
  9. 暴风魔镜SDK:MojingSDK For Unity V1.3.5112 (R).zip
  10. 51单片机蜂鸣器的使用