Python Excel批量处理工具
Python+openpyxl编写的Excel批量处理工具,支持多个Excel合并为一个、按列拆分Excel、批量转换格式、提取指定列数据、批量设置格式,是办公自动化和数据处理的利器。
详细内容
import pandas as pd, os, glob
# 合并多个Excel
input_dir = 'input'; output = 'merged.xlsx'
all_data = []
for f in glob.glob(os.path.join(input_dir, '*.xlsx')):
df = pd.read_excel(f)
df['来源文件'] = os.path.basename(f)
all_data.append(df)
print(f'读取: {f}, {len(df)} 行')
result = pd.concat(all_data, ignore_index=True)
result.to_excel(output, index=False)
print(f'合并完成: {len(result)} 行 -> {output}')
# 按某列拆分
# for name, group in result.groupby('分类'):
# group.to_excel(f'{name}.xlsx', index=False)
适配环境
依赖环境:Python 3.7+,需安装openpyxl
使用说明
1.安装Python 3.7+
2.pip install openpyxl pandas
3.保存为excel_tool.py
4.将Excel放在input文件夹
5.python excel_tool.py 运行
支持.xlsx格式,旧版.xls需先转换
合并前确保各文件列结构一致
可以指定要合并的Sheet
处理大文件建议用pandas
输出文件自动加时间戳
2.pip install openpyxl pandas
3.保存为excel_tool.py
4.将Excel放在input文件夹
5.python excel_tool.py 运行
支持.xlsx格式,旧版.xls需先转换
合并前确保各文件列结构一致
可以指定要合并的Sheet
处理大文件建议用pandas
输出文件自动加时间戳
常见问题
问:支持.xls格式吗?
答:openpyxl只支持.xlsx,.xls需要用xlrd或先转换
问:会丢失公式吗?
答:默认保留公式,如果需要计算结果可以设置data_only=True