问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

python 合并多个excel到一个excel

发布网友 发布时间:2022-04-06 07:46

我来回答

2个回答

懂视网 时间:2022-04-06 12:07

今天来用python实现合并多个excel为一个工作本,使用不到40行代码完成了60多张excel工作本合并为一张,大家一起来看看吧。

本篇使用的不是openpyx库,使用的使是xlrd,xlwt库,虽然这两库功能没法根openpyx相比,但可以操作xls结尾的旧版excel而openpyx不支持

代码

大体思路如下

  • 遍历获取根目录下的所有excel文件
  • 根据excel名称进行匹配获取某类excel
  • 创建工作本用于写入拷贝的数据
  • 每个excel都有一张Sheet1,循环遍历单元格写入创建的工作本
  • 详细过程写在代码里面

    # -*- coding: utf-8 -*-
    import xlrd
    import xlwt
    import os
    import re
    """ 写入工作本 """
    def write_excel(path, write_sheet):
     # 加载工作本
     book = xlrd.open_workbook(path)
     # 获取表单
     read_sheet = book.sheet_by_name('Sheet1')
     # 遍历
     for row in range(read_sheet.nrows):
     for col in range(read_sheet.ncols):
      write_sheet.write(row, col, read_sheet.cell_value(row,col))
      
    # 获取根目录下所有文件名
    def walk(path):
     for root,dirs,names in os.walk(path):
     list = []
     for filename in names:
     path = os.path.join(root, filename)
     list.append(path)
     return list
    if __name__ == "__main__":
     # 创建工作本
     write_book = xlwt.Workbook()
     # 根目录
     root = r'C:mydatageneratorexcel'
     path_list = walk(root)
     for path in path_list:
     val = path.find("本专科")
     if val!=-1:
     # 正则匹配
      ser = re.search('.*20200403(.*?).xls',path)
      name = ser.group(1)
      # 创建sheet
      write_sheet = write_book.add_sheet(name)
      # 写入
      write_excel(path, write_sheet)
     # 保存 
     write_book.save(r'本专科.xls')

    感谢大家的阅读,希望大家收益多多。

    本文转自:https://blog.csdn.net/youku1327/article/details/105300668

    推荐教程:《python教程》

    热心网友 时间:2022-04-06 09:15

    不考虑用VBA吗?非常简单。
    先要明确,是想把多个工作薄的表格合并到同一工作薄中,还是想将表的内容进行合并。
    声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
    泰迪必备用品有哪些? 养泰迪狗新手需要准备什么东西 谁知道白色泰迪狗的生活用品需要哪些? 美国什么选举时间 离西双版纳最近的地州必去景点 技嘉945GCM-S2L ( 英特尔 945G )主板配什么显卡好 5年的台式电脑了想更新配置,反应速度有点慢。该如何提高,求大神指教... e2160超频设置 如何将多个excel表格合并成一个如何把多个工作簿合并成一个excel 上海社保最低比例是多少钱 php 在什么情况下 ,只能实例化对象调用类方法,不能用静态static方法 php"直接用类名"和"new实例化"调用函数哪种方法效率更高? 静态方法和实例化方法的区别 静态方法跟实例方法有什么区别 网站QPS好低啊,有什么优化方法 如何在 OSX 上架設 Nginx+MariaDB+PHP 伺服器 SAE的功能类 php-5.4.8-Win32-VC9-x64对应的xdebug 孤立的页面 怎么测试 linux系统的服务器上如何将php软件进行升级? xhprof 0.9.4适用php什么版本 xhprof安装 phpize是什么命令 性能测试,监控PHP的线程,堆栈,类有什么好的监控工具 php7的xhprof 扩展叫什么 在PHP7下执行composer报错,是不是不兼容 惠新宸的个人简介 为什么在PHP7下会报错? php7 会不会改变php 地位 php5.6升级到php7,对应用有什么影响 PHP7的优缺点及从当前版本升级到PHP7都遇见了哪些坑 怎么用python把多个excel的数据合成一个dataframe? 如何将多个excel表合并为sheet python合并多个excel,请问是哪里错了? 如何利用python实现表格每一行与另一表格逐行合并,如图? 用Python导出工程文件两个子页里的数据成为两个excel表格,但我想把它合并成个一个excel表格的两个sheet 如何将excel中一个文件里的多个sheet表合并到一个表里 用代码完成 如何把多个excel文件合并到一个工作簿的代码 使用python对Excel进行多列单元格的批量合并操作 以实例说明什么是“对象—关系映射”? 什么是ORM? 以实例说明什么是“对象-关系映射” 以实例说明什么是“对象—关系映射” 在Hibernate中,什么是对象-关系映射? java中orm是什么? 什么是ORM及ORM的详解 以实例说明什么是“关系-对象映射” 数据库系统三级模式与二级映射是什么意思 对象关系映射的实际应用 什么是实体映射--多重映射??? 为什么要用对象关系映射?