import os
import pandas as pd
# 指定包含Excel文件的文件夹路径
folder_path = 'C:\\Users\\Admin\\Desktop\\数据核对'
# 获取文件夹中的所有Excel文件
excel_files = [file for file in os.listdir(folder_path) if file.endswith(('.xls', '.xlsx'))]
# 创建一个空的DataFrame来存储合并后的数据
merged_data = pd.DataFrame()
# 遍历所有Excel文件
for file in excel_files:
file_path = os.path.join(folder_path, file)
# 读取Excel文件,获取所有工作表
xls = pd.ExcelFile(file_path)
# 遍历每个工作表并合并它们
for sheet_name in xls.sheet_names:
df = pd.read_excel(file_path, sheet_name=sheet_name)
# 添加一个新的列,用于标识数据来自哪个Excel文件的哪个工作表
df['SourceFile'] = file
df['SheetName'] = sheet_name
# 合并数据,将当前工作表的数据追加到已合并的数据中
merged_data = merged_data.append(df, ignore_index=True)
# 将合并后的数据保存为一个新的Excel文件,指定index=False以避免保存索引列
merged_data.to_excel('C:\\Users\\Admin\\Desktop\\合并数据.xlsx', index=False)
print('Excel文件合并完成并保存为合并数据.xlsx,包含标识列SourceFile和SheetName')