项目场景:

遇到需要多个excel工作簿、多sheet工作进行合并,但又不想买WPS会员和VBA,就可以借助python进行一个简单的程序编写从而解决。


问题描述

将以上三个工作簿,及其对应工作表表进行对应合并。

所需要的第三方库:

import pandas as pd

import xlrd

import os

import xlwt


代码:

# 确定文件路径

path="合并工作表\\"

xlsx_names = [x for x in os.listdir(path) if x.endswith(".xlsx")]

# print(xlsx_names)

# 获取工作簿名称

xlsx_names1 = xlsx_names[0]

aa = path + xlsx_names1

# print(xlsx_names1)

# print(aa)

# first_file_fh = pd.read_excel(aa,engine='openpyxl')

# print(first_file_fh)

first_file_fh=xlrd.open_workbook(aa)

# 获取工作表名称

sheet_names=pd.ExcelFile(aa).sheet_names

# print(first_file_sheet)

# 无需合并的sheet名称

no_conbat = ["无需合并"]

# 加载writer

writer=pd.ExcelWriter("合并成功文件.xlsx")

# 循环合并

for sheet_name in sheet_names:

# print(sheet_name)

df = None

# 按EXCEL名循环

for xlsx_name in xlsx_names:

num=0

sheet_na = pd.ExcelFile(path + xlsx_name).sheet_names

# print("sheet_na:",sheet_na)

if sheet_name in sheet_na:

if sheet_name in no_conbat and num!=0:

continue

_df = pd.read_excel(path + xlsx_name, sheet_name=sheet_name,header=0)

# print(df)

if df is None:

df = _df

else:

df = pd.concat([df, _df], ignore_index=True)

else:continue

# print(df)

df.to_excel(excel_writer=writer, sheet_name=sheet_name,index=False)

print(sheet_name + "  保存成功!共%d个,第%d个。" % (len(sheet_names),num))

num+= 1

writer.save()

writer.close()

结果展示: 

代码运行结束后会自动生成“合并成功文件.xlsx”

合并成功

Python 多excel工作簿 多sheet工作表合并相关推荐

  1. VBA小程序_清除工作簿所有Sheet工作表的条件格式

    Sub VBA小程序_清除工作簿所有Sheet工作表的条件格式()Dim sht As WorksheetFor Each sht In Worksheetssht.Activatesht.Cells ...

  2. Excel:使用powerquery进行多表合并

    ​注:本文原创为:https://www.cnblogs.com/fanyu2019/p/11175827.html,本文在原创的基础上添加修改了一点内容 目录 一. 单工作簿多工作表合并 二. 多工 ...

  3. Python+Excel系列:批量处理Excel文件的模块—xlwings:创建、保存、打开工作簿,操控工作表和单元格

    文章目录 认识xlwings模块 1.创建工作簿 2.保存工作簿 3.打开工作簿 4.操控工作表和单元格 综合实例 认识xlwings模块 可以用来处理Excel文件的python模块很多,如Xlsx ...

  4. Excel 如何让一个表格成为另一个工作簿的sheet

    要让一个Excel表格成为另一个工作簿的sheet,可以按照以下步骤操作: 打开要将表格复制到的目标工作簿. 在目标工作簿中创建一个新的工作表,可单击工作表标签下的"+"符号或使用 ...

  5. Excel·VBA工作簿拆分所有工作表单独保存

    对Excel活动工作簿进行拆分,每个工作表单独保存为工作簿文件,文件保存在该工作簿同一文件夹下单独文件夹内 Sub 工作簿拆分所有工作表单独保存文件()'将活动工作簿wb拆分,每个ws单独保存为文件, ...

  6. python创建工作簿_创建工作簿、工作表和写入单元格

    ---------------------------------------------------------------- 学完本课程可继续巩固篇:https://edu.51cto.com/c ...

  7. 关于Excel下通过VBA实现工作簿文件下工作表的合并

    对于普通使用者而言,Excel是一个比较强大的数据处理工具.一般公司的普通职员常使用它来完成数据的录入分析,但是当面对处理经由多人按统一模板统计完成的录入数据分析时,数据将分散存放在多个.xlsx文件 ...

  8. excel合并多个工作表_如何快速的合并多个 Excel 工作簿至一个工作簿中的工作表?...

    作者:汪汪家的宝贝 链接:https://www.jianshu.com/p/c8ae6852f1da 前言 在日常工作过程中,我们有可能需要把多个Excel工作簿的内容汇总到一张Excel工作表中. ...

  9. 方法range作用于对象worksheet时失败_VB.NET Excel操作类(获取工作簿列表和工作表列表及工作表对象)...

    效果展示 引用excel类 Imports Microsoft.Office.Interop Excel类代码开始 Public Class Cls_excel 返回Excel对象 ''' ''' 返 ...

最新文章

  1. Python中pandas检查dataframe中是否包含某个字段、或者数据列实战、检查dataframe中是否包含某个字段集合
  2. 2020 五大技术趋势:无人驾驶发展、机器视觉崛起、区块链实用化、人类增强技术、超自动化...
  3. linux shell 字符串 转 数组 列表 分隔符 字符串 转 数组
  4. 清理apache共享内存引起的oracle宕机
  5. poj 2528 线段树离散化+染色
  6. Entity Framework Core导航属性加载问题
  7. Future和FutureTask实现异步计算
  8. c语言学习之结构篇代码演示样例-输入n个同学的姓名,数学英语成绩,依照平均分从低到高排序并输出...
  9. 【Spring-AOP】自动代理类AnnotationAwareAspectJAutoProxyCreator
  10. SpringBoot2.0整合jsp
  11. java jpg转换成pdf格式_Java pdf和jpg互转案例
  12. 错误:Error:java.lang.RuntimeException: Some file crunching failed, see logs for details解决方案
  13. 阿里实人认证/活体人脸认证步骤解释一下子 服务端java sdk 手把手 新手 菜 欢迎大佬提意见
  14. 11_04_第六阶段:大前端进阶||07-Vue详解||P6:Vue绑定事件【观看狂神随笔】
  15. python3基础教程雪峰_[雪峰磁针石博客]python3快速入门教程2数据结构1变量与赋值...
  16. 快速实现短信发送功能(SpringBoot)
  17. 被VMP蹂躏了。。。
  18. Some words about Computer
  19. 台达CH系列变频器带油电伺服电机调机笔记
  20. 5 款比较流行的WordPress主题后台选项开发框架

热门文章

  1. 记录:百度地图开发 ios系统获取定位失
  2. 服务器重装Linux系统(以H22H-05为例)
  3. matlab,simulink仿真,直驱,永磁,风力发电 直驱式永磁同步风力发电机系统建模与仿真
  4. php 构造函数的继承
  5. 世界领先的电动汽车国际标准 一 ISO 15118全系列
  6. 底层10.2——PWM实验复习
  7. 回归分析以及选择模型
  8. 样式表中定义字体的斜体,粗细,大小写,上(下)划线及删除线和闪烁字体
  9. 自动化压力测试:Mokey测试参数:
  10. python前端和后端的区别_前端和后端的区别