Excel批处理Pandas 批量处理 Excel 文件:用 40 行代码合并 100 个报表
发布时间:2026/9/30 23:41:19 锦皓数字建站

Pandas环境准备首先确保你的 Python 环境已安装 pandas 和 openpyxl用于读写 .xlsx 文件。打开终端执行pip install pandas openpyxl我们将使用一个包含多个 Excel 报表的文件夹每个文件都有相同的列结构如日期、销售额、地区。我们的目标是将这些文件合并成一个 DataFrame并输出为汇总表。分步实现1. 获取所有 Excel 文件列表使用glob模块匹配文件夹下的所有 .xlsx 文件import glob import pandas as pd files glob.glob(reports/*.xlsx) print(f找到 {len(files)} 个文件)2. 逐个读取并合并循环读取每个文件并利用pd.concat进行合并。这里要注意如果文件有多个工作表默认读取第一个如果列顺序不同建议先按列名排序。dataframes [] for file in files: df pd.read_excel(file) # 可选统一列顺序 df df[[日期, 销售额, 地区]] dataframes.append(df) merged pd.concat(dataframes, ignore_indexTrue) print(merged.head())3. 添加来源文件名列为了追踪数据来源可以添加一列记录文件名for file in files: df pd.read_excel(file) df[来源文件] file.split(/)[-1] # 或使用 os.path.basename dataframes.append(df)4. 处理缺失值和类型合并后检查缺失值和数据类型确保数值列是数值类型merged[销售额] pd.to_numeric(merged[销售额], errorscoerce) merged merged.dropna(subset[销售额])5. 输出汇总结果将合并后的 DataFrame 保存为新的 Excel 文件merged.to_excel(汇总报表.xlsx, indexFalse)验证效果运行脚本后打开生成的“汇总报表.xlsx”检查行数是否等于所有文件行数之和。你也可以在脚本中打印统计信息print(f总行数: {len(merged)}) print(merged[地区].value_counts())如果一切正常你就成功完成了批量合并。为了健壮性建议添加异常处理例如跳过损坏的文件并考虑使用pd.ExcelFile检查工作表名称。总结通过以上步骤你学会了用 Pandas 批量处理 Excel 文件。这个技巧可以节省大量手动复制粘贴的时间特别适合日常报表汇总。你可以进一步扩展按日期过滤、分组聚合等根据实际需求调整即可。
锦
锦皓数字建站
深耕本土企业品牌数字化升级,专注原创端正雅致商务官网,从视觉设计到稳定运维全程保驾护航。