多个excel工作簿合并,每个工作簿里有不同的工作表,请按照每个工作簿的工作表名进行一个文件夹里面的工作簿合并
时间: 2024-03-01 08:55:17 浏览: 122
您可以使用Python的Pandas库来合并多个Excel工作簿中的工作表。以下是一个示例代码,可以按照每个工作簿的工作表名进行合并:
```python
import os
import pandas as pd
# 设置工作目录,即包含所有要合并的Excel文件的文件夹路径
work_dir = 'path/to/folder'
# 获取所有Excel文件的文件名
excel_files = [filename for filename in os.listdir(work_dir) if filename.endswith('.xlsx')]
# 定义一个空的DataFrame,用于存储合并后的结果
merged_df = pd.DataFrame()
# 遍历每个Excel文件
for excel_file in excel_files:
# 读取Excel文件中的所有工作表,并按照工作表名进行合并
xls = pd.ExcelFile(os.path.join(work_dir, excel_file))
for sheet_name in xls.sheet_names:
df = pd.read_excel(xls, sheet_name)
df['File'] = excel_file # 添加一列文件名,方便后续区分
df['Sheet'] = sheet_name # 添加一列工作表名,方便后续区分
merged_df = merged_df.append(df)
# 保存合并后的结果到一个新的Excel文件中
merged_df.to_excel(os.path.join(work_dir, 'merged.xlsx'), index=False)
```
该代码将会遍历指定文件夹内的所有Excel文件,并按照每个工作簿的工作表名进行合并,最终将结果保存到一个名为"merged.xlsx"的新Excel文件中。注意,本代码假设所有Excel文件均为".xlsx"格式,如果您的文件格式不同,请相应地更改代码中的文件扩展名过滤条件。
阅读全文