最近有个小项目需要合并大量的excel文档。
为了提高效率,不想一直复制粘贴,就直接搞了下面的代码。
代码还是有点瑕疵,不过勉强可以用。
需要用到pandas,没有安装的可以直接PIP安装一下
命令行下运行
pip install pandas -i https://pypi.douban.com/simple
以下是执行代码,python3.9
import pandas as pd
import os
# 设置要合并的Excel文件所在的文件夹路径
folder_path = 'your_folder_path' # 将 'your_folder_path' 替换为你的文件夹路径
# 获取文件夹中的所有Excel文件
files = os.listdir(folder_path)
excel_files = [f for f in files if f.endswith('.xlsx')]
# 创建一个空的DataFrame来存储合并后的数据
merged_data = pd.DataFrame()
# 遍历所有Excel文件
for file in excel_files:
# 读取每个Excel文件的所有工作表
sheets = pd.read_excel(os.path.join(folder_path, file), sheet_name=None)
# 遍历每个工作表
for sheet_name, df in sheets.items():
# 将工作表数据添加到合并后的DataFrame中
merged_data = pd.concat([merged_data, df])
# 将合并后的数据保存到新的Excel文件中,文件名是merged_data
merged_data.to_excel('merged_data.xlsx', index=False)
欢迎大家进一步修正相关代码。