Python合并一个 Excel 里面的多张表

刚需要将入职五个月的日报汇总, 但是每日都是在通一个excel里面新建副表写日报,现在已经积累了84张附表(每周4张,总共21周),手动复制粘贴每张表格是相当耗时的工作。在这个时候,我开始思考:有没有一种更快捷的方法来合并这些表格呢?于是,我想到了使用Python。

一、必要的库文件

Excel文件中包含多个工作表,并且想要将这些工作表合并成一个,可以使用Python的pandas库来处理。

在这之前你可能需要安装的库:

pip install openpyxl
pip install pandas

二、参考代码

直接上 Python 参考代码:

import pandas as pd
# 读取Excel文件
file_path = 'C:\\Users\\97942\\Desktop\\工作计划总表.xlsx'  # 替换为你的Excel文件路径
xls = pd.ExcelFile(file_path)

# 创建一个空的数据帧,用于存储合并后的数据
merged_df = pd.DataFrame()

# 遍历每个工作表并合并
for sheet_name in xls.sheet_names:
    df = pd.read_excel(file_path, sheet_name=sheet_name)
    merged_df = pd.concat([merged_df, df], ignore_index=True)

# 将合并后的数据保存为新的Excel文件
merged_file_path = 'merged_excel_file.xlsx'  # 替换为你想要保存的新文件路径
merged_df.to_excel(merged_file_path, index=False)

print(f'合并完成,保存为 {
     merged_file_path}')

三、删除多余行

合并后,想要删除包含"工作计划"的行和空行。

import pandas as pd
# 读取Excel文件
file_path = 'C:\\Users\\97942\\Desktop\\merged_excel_file.xlsx'  # 替换为你的Excel文件路径
df = pd.read_excel(file_path, header=None)  # 假设数据没有列名,所以使用header=None

# 删除包含"工作计划"的行
df = df[~df[0].astype(str).str.contains('工作计划')]  # 将列转换为字符串后再进行contains操作

# 删除空行
df = df.dropna(how='all')

# 将结果保存为新的Excel文件
new_file_path = 'new_excel_file.xlsx'  # 替换为你想要保存的新文件路径
df.to_excel(new_file_path, index=False, header=False)  # 不保留列名

print(f'已删除包含"工作计划"的行和空行,保存为 {
     new_file_path}')

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-08 23:10:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-08 23:10:04       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-08 23:10:04       87 阅读
  4. Python语言-面向对象

    2023-12-08 23:10:04       96 阅读

热门阅读

  1. 系统维护与调试命令 -- ping

    2023-12-08 23:10:04       53 阅读
  2. IDEA中,Archetype的作用

    2023-12-08 23:10:04       56 阅读
  3. 工业4轴机器人C#控制

    2023-12-08 23:10:04       50 阅读
  4. 举例说明自然语言处理(NLP)技术。

    2023-12-08 23:10:04       56 阅读
  5. go 爬虫 todo

    2023-12-08 23:10:04       65 阅读
  6. 在Redis中设置一个键值对并为其指定过期时间

    2023-12-08 23:10:04       50 阅读
  7. 集成学习(Ensemble Learning)

    2023-12-08 23:10:04       45 阅读
  8. GO设计模式——9、过滤器模式(结构型)

    2023-12-08 23:10:04       57 阅读
  9. 图像平滑、降噪、滤波、采样浅谈

    2023-12-08 23:10:04       57 阅读
  10. HTML程序大全(1):简易计算器

    2023-12-08 23:10:04       60 阅读