最近需要将许多个单独的表格整合到一起,首先是格式转化,将xls转为xlsx文件

import win32com.client as win32
import os.path
import osdef xlsToxlsx(xls_path, xlsx_path):for root, dirs, files in os.walk(xls_path, topdown=False):for name in files:str = os.path.join(root, name)if str.split('.')[-1] == 'xls':print(str)print(name)fname = str  # 合成需要转换的路径与文件名fname_tmp = xlsx_path + '\\' + name + 'x'  # 合成准备存放转换好的路径与文件名print(fname_tmp)excel = win32.gencache.EnsureDispatch('Excel.Application')  # 调用win32模块wb = excel.Workbooks.Open(fname)  # 打开需要转换的文件wb.SaveAs(fname_tmp, FileFormat=51)  # 文件另存为xlsx扩展名的文件wb.Close()excel.Application.Quit()xls_path = r"存放xls文件的路径"
xlsx_path = r"存放xlsx文件的路径"
xlsToxlsx(xls_path, xlsx_path)

将文件格式转换成统一的格式后,开始创建新的表用来存放多个Excel表中的内容。但是这样直接复制会有格式问题,后面再解决。

import glob
import pandas as pd
#需要创建ExcelWriter对象,要不sheet会覆盖,只留最后一个
writer = pd.ExcelWriter(r'这里填写创建表的路径包括文件名,例如:D:\abc\整合表.xlsx')
flist=glob.glob(r"这里填写存放多个Excel文件的目录,例如:D:a\*.xlsx")
#这里的‘*.xlsx’不用更改,只需在前面添加路径即可for i in flist:df=pd.read_excel(i)
#提取文件名fname=i.split("\\")[-1]fname=fname.split(".")[0]# print(fname)df.to_excel(writer, sheet_name=fname)
writer.save()

到这里表格已经复制完成了,但是新创建的表格的首行首列会出现number等字样,不够规范

为了删除首行首列的不规范格式,采用以下方式将其去除

import openpyxlwb = openpyxl.load_workbook(r"这里填写刚刚整合好的文件,例如之前的:D:\a\整合表.xlsx")workbook = xlrd.open_workbook(r"这里填写刚刚整合好的文件,例如之前的:D:\a\整合表.xlsx")
# 获取所有sheet的名字
names = workbook.sheet_names()
num = len(names)for i in range(num):# 通过sheet索引获得sheet对象worksheet = workbook.sheet_by_index(i)'''对sheet对象进行操作'''name = worksheet.name  # 获取表的姓名nrows = worksheet.nrows  # 获取该表总行数# print(nrows)  ncols = worksheet.ncols  # 获取该表总列数# print(ncols)  sheet = wb[name]list = worksheet.row_values(0)temp=list[1]# print(temp)# 在第1列的位置删除1列sheet.delete_cols(1)# 在第1行的位置删除1行sheet.delete_rows(0)sheet['A1']=tempprint(name+'表已整合到某某表中')## 指定不同的文件名,可以另存为别的文件wb.save(r'这里填保存xlsx文件的路径,即最后整合表的路径和文件名,例如:D:\abc\新整合表.xlsx')

运行完后效果如下

使用Python将多个单独的Excel文件整合到一个Excel文件的不同工作表里相关推荐

  1. datatables页面合并两个列_python实现多个excel合成合并为一个excel

    一.环境准备 python在执行save保存excel时可能报错原因:# 每次执行前new_file_name都必须是最新的excel,也就是从原模板中直接复制的文件,如果你先执行了程序插入数据进模板 ...

  2. python怎么调用另一个py文件的变量,Python中py文件引用另一个py文件变量的方法

    Python中py文件引用另一个py文件变量的方法 最近自己初学Python,在编程是遇到一个问题就是,怎样在一个py文件中使用另一个py文件中变量,问题如下: demo1代码 import requ ...

  3. 代码杂记[壹]-将多个Excel信息汇总到一个Excel表格里

    代码杂记[壹]-将多个Excel信息汇总到一个Excel表格里 序 '壹'--将多个Excel信息汇总到一个Excel表格里 0.代码目的 1.代码实现 2.报错 FileNotFoundError和 ...

  4. python导入其他py文件-Python中py文件引用另一个py文件变量的方法

    最近自己初学Python,在编程是遇到一个问题就是,怎样在一个py文件中使用另一个py文件中变量,问题如下: demo1代码 import requests r = requests.get(&quo ...

  5. excel几个表合成一张_快速将多个excel表合并成一个excel表

    应用场景:有很多张excel,而且excel表里面的结构基本一样,如何快速将这些excel合并在一个excel页面,便于后期分析和统计 技术实现:利用excel表的宏计算实现. 注意:金山的WPS没有 ...

  6. java poi 如何合并多个sheet 为一个sheet_Java POI组件实现多个Excel文件整合成一个多Sheet的Excel文件...

    代码: package com.weichai; import java.io.File; import java.io.FileInputStream; import java.io.FileOut ...

  7. 用python将指定目录下的所有json文件合并成一个csv文件

    #!/usr/bin/env python # -*- encoding: utf-8 -*-import sys import json import os import pandas as pd ...

  8. excel合并多个工作表_快速将多个Excel表格合并成一个Excel表格

    之前在微信群内有朋友问我如何快速将多个Excel表格合并成一个Excel表格,当时没有讲解清楚,今天专门来告诉大家如何快速合并Excel表格到一个工作表中. 在合并表格中,不外乎以下两种情况: 将多个 ...

  9. 如何快速把多个excel表合并成一个excel表(不熟悉vba及公式的人)

    对于不熟悉Excel公式,不熟悉vba的人,要如何按需要快速把多个excel表合并成一个excel表? 对于Excel的合并,很多需要通过vba变成,但对于不熟悉vba编程的人,如何合并呢?给大家推荐 ...

最新文章

  1. python将scikit-learn自带数据集转换为pandas dataframe格式
  2. 我们该怎么成为技术尖子生
  3. Linux学习笔记-题记
  4. Shell 示例:利用 $RANDOM 产生随机整数
  5. oidc auth2.0_使用Spring Security 5.0和OIDC轻松构建身份验证
  6. 怎么解决相位抵消_【录音教程】如何防止话筒拾音的声学相位抵消
  7. NYOJ47过河问题
  8. jquery $加一个点后面加个名称的意思
  9. 2017.10.26 星际贸易 思考记录
  10. type=file的未选择任何文件修改_Electron应用易“招黑”,轻松被修改并植入后门...
  11. [SQL面试经验] 经典sql面试题及答案第1期
  12. C++ opencv基于帧差法的关键帧提取
  13. Python好酷|抓包神器 mitmproxy
  14. python方差特征选择_特征选择-Filter过滤法(方差)
  15. IE条件注释意义及用法
  16. 皮德常《c++程序设计教程》第一章第二题:编写一个程序,要求用户输入一年12个月每月的降雨总数,并用一个float数组存储。
  17. 刷机大师独家支持android,刷机大师v3.4.5发布 独家支持荣耀6一键刷机
  18. 九章算法 | 苏州微软面试题:程序检查
  19. Javascript中删除数组中重复出现的元素
  20. 【教你赚钱】5分钟成为副业致富的独立开发者

热门文章

  1. 量化交易 米筐 因子的打分对比(因子的对比与挑选)
  2. vc中 volatile 的作用
  3. TVM中的auto-scheduling机制(Ansor)学习笔记
  4. tekton TriggerBinding资源
  5. sql中limit后参数有引号_mySql limit 函数后的参数是什么意思
  6. echarts自定义视图数据(dataView)
  7. linux dmesg命令参数及用法详解
  8. 基于Matlab 实现螺旋线 轨迹曲线绘制
  9. 【调剂】航天科工四院四部2023年度自培研究生开始调剂啦!!!
  10. 读《南怀瑾选集》第四卷,易经杂说,易经系传别讲