天天看点

Python自动化办公——轻松准确合并多个Excel文件

作者:人工智能取经人

在当今的商业世界中,高效的办公方式对于企业的成功至关重要。工作中经常遇到这样一个场景,汇总各部门、分公司、中心、区域经理们发送过来的Excel文件,而将这些文件合并成为了一项繁琐且耗时的任务。

想象一下,手动打开每个 excel 文件,然后逐个复制和粘贴数据。要是遇上一个世界500强大企业,汇总来的表格几百上千份,想想就是职场灾难

然而,有了 Python,这一切都将变得轻松而高效。Python 的强大之处在于它能够自动实现 excel 的合并。无论是将所有内容合并到一张表里还是将不同表格的合并到一个Excel文件里每个表单独成一个Sheet,都可以通过简单的代码来完成。

通过自动读取这些文件,并将它们合并这种自动化的过程还可以大大减少错误的发生。手动合并时,很容易出现数据遗漏或错误,但使用 Python 可以确保准确性和一致性。

1、批量读取文件

各个分公司汇总上来的表格,需要汇总到一个表里

Python自动化办公——轻松准确合并多个Excel文件

代码

import os


def traverse_excel_files(folder_path):
    # 遍历文件夹下的所有文件和子文件夹
    for root, dirs, files in os.walk(folder_path):
        for file in files:
            # 根据文件扩展名判断是否为 Excel 文件
            if file.endswith('.xls') or file.endswith('.xlsx'):
                file_path = os.path.join(root, file)
                # 在这里可以对 Excel 文件进行进一步的操作,例如打印文件路径等
                print(file_path)
folder_path = './Excel'
traverse_excel_files(folder_path)           

读取到文件夹中所有的Excel文件

Python自动化办公——轻松准确合并多个Excel文件

2、将所有Excel表的内容合并到一张表里

每个excel的内容都是分公司各人员的薪资情况

Python自动化办公——轻松准确合并多个Excel文件

代码

import os
import pandas as pd


def traverse_excel_files(folder_path):
    df_list = []
    # 遍历文件夹下的所有文件和子文件夹
    for root, dirs, files in os.walk(folder_path):
        for file in files:
            # 根据文件扩展名判断是否为 Excel 文件
            if file.endswith('.xls') or file.endswith('.xlsx'):
                file_path = os.path.join(root, file)
                # 在这里可以对 Excel 文件进行进一步的操作,例如打印文件路径等
                print(file_path)
                df = pd.read_excel(file_path)
                df_list.append(df)
    return df_list
folder_path = './Excel'
df_list = traverse_excel_files(folder_path)
merged_df = pd.concat(df_list, ignore_index=True)
merged_df.to_excel('merged.xlsx', index=False)           

所有的excel内容都到一个表里了【案例中每个表格的内容都是一样的】

Python自动化办公——轻松准确合并多个Excel文件

3、将所有Excel表的内容合并到一个文件里,每个表单独成一个Sheet

Python自动化办公——轻松准确合并多个Excel文件
import os
import pandas as pd




def traverse_excel_files(folder_path):
    # # 创建一个空的 Excel 文件
    writer = pd.ExcelWriter('mergeEx.xlsx')
    # 遍历文件夹下的所有文件和子文件夹
    for root, dirs, files in os.walk(folder_path):
        for file in files:
            # 根据文件扩展名判断是否为 Excel 文件
            if file.endswith('.xls') or file.endswith('.xlsx'):
                file_path = os.path.join(root, file)
                sheetname = file[4:9]
                # 在这里可以对 Excel 文件进行进一步的操作,例如打印文件路径等
                print(file_path)
                df = pd.read_excel(file_path)
                df.to_excel(writer, sheet_name=sheetname,index=False)
    writer._save()
folder_path = './Excel'
traverse_excel_files(folder_path)           

对于企业来说,自动化办公意味着节省了时间和资源。员工可以将更多的时间用于分析和决策,而不是在繁琐的合并工作上花费大量精力。

此外,Python 的灵活性使其可以适应各种不同的需求。无论是每月的销售报告还是季度的市场分析,都可以轻松地进行 excel 合并。

总之,Python 为办公带来了革命性的变化。它使得 excel 合并变得轻松、高效和准确。让我们拥抱这一强大的工具,提升工作效率,迎接更美好的未来。

继续阅读