影刀RPA保姆级教程:多Excel文件自动合并与批量文件重命名 影刀RPA保姆级教程多Excel文件自动合并与批量文件重命名拼多多导出「近30天订单明细」有6个文件、淘宝导出「生意参谋-流量来源」有3个Sheet、TEMU导出「Order Report」是CSV格式——这些文件散落在不同文件夹里每周手动合并至少要花1小时。Excel文件合并和重命名是入门RPA最应该先自动化的场景——不需要登录、不需要等加载纯粹是文件操作的体力活。我也是从Excel合并开始上手影刀RPA的。第一次用Python脚本合并了12个文件只花了10秒当场决定把所有重复性文件操作全交给RPA。这一篇把最常用的Excel合并和重命名方法拆干净。影刀RPA操作Excel的方式选择影刀RPA操作Excel有三种方式场景不同选择不同方式指令位置优点缺点Excel指令指令库→Excel操作可视化不用写代码功能有限大量文件处理慢CSV指令指令库→CSV/TXT操作处理速度快只能用CSV格式不支持.xlsx| Python脚本 | 指令库→Python脚本 | 功能最强Pandas支持 | 需要写代码 |文件数量超过5个时用Python Pandas脚本——影刀RPA的Excel指令逐个打开文件效率太低。多文件合并拼多多店群自动化报活动上架场景一同结构文件的纵向合并每天从拼多多导出的数据文件结构完全相同只是数据行不同。纵向追加即可。# 合并多个结构相同的Excel文件纵向追加importpandasaspdimportosimportglob# 1. 指定文件夹路径从影刀变量读取folder_pathflow.get_variable(excel_folder)# 如 C:\RPA_Data\拼多多\# 匹配所有xlsx文件file_patternos.path.join(folder_path,经营数据*.xlsx)filesglob.glob(file_pattern)iflen(files)0:print(未找到匹配的文件)raiseException(文件列表为空)print(f找到{len(files)}个文件开始合并...)# 2. 逐个读取并合并all_data[]forfile_pathinfiles:try:dfpd.read_excel(file_path)# 添加来源文件名方便追溯df[来源文件]os.path.basename(file_path)all_data.append(df)print(f已读取:{os.path.basename(file_path)}({len(df)}行))exceptExceptionase:print(f读取失败:{file_path}, 错误:{e})# 3. 合并所有数据mergedpd.concat(all_data,ignore_indexTrue)# 4. 去重按关键列# 如果文件之间可能有重复数据用drop_duplicatesmergedmerged.drop_duplicates(subset[订单号,商品ID])# 5. 保存合并结果output_pathos.path.join(folder_path,f合并汇总_{len(files)}个文件.xlsx)merged.to_excel(output_path,indexFalse)print(f合并完成! 总行数:{len(merged)}, 保存至:{output_path})flow.set_variable(merged_file,output_path)场景二不同Sheet的横向合并一个Excel文件有多个Sheet每个Sheet存储不同维度的数据需要按关键字段横向拼接# 横向合并同一文件的不同Sheetimportpandasaspd file_pathrC:\RPA_Data\淘宝\生意参谋.xlsx# 读取所有Sheetsheet1pd.read_excel(file_path,sheet_name流量概况)sheet2pd.read_excel(file_path,sheet_name转化分析)sheet3pd.read_excel(file_path,sheet_name客群画像)# 按「日期」和「商品ID」横向合并mergedsheet1.merge(sheet2,on[日期,商品ID],howleft)mergedmerged.merge(sheet3,on[日期,商品ID],howleft)merged.to_excel(rC:\RPA_Data\淘宝\合并_全维度.xlsx,indexFalse)场景三多平台数据的统一格式合并这是电商数据汇总最复杂的场景——拼多多、淘宝、TEMU的字段名和格式都不同。数据清洗后用统一列名合并# 多平台数据清洗后合并为标准格式importpandasaspd# 定义标准列名standard_cols[平台,店铺,日期,销售额,订单数,访客数,转化率]records[]# 读取拼多多数据并标准化pddpd.read_excel(rC:\RPA_Data\拼多多\今日数据.xlsx)pddpdd.rename(columns{成交金额(元):销售额,成交订单数:订单数,访客数:访客})pdd[平台]拼多多records.append(pdd[standard_cols])# 读取淘宝数据并标准化tbpd.read_excel(rC:\RPA_Data\淘宝\今日数据.xlsx)![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/2da9378a1c584b429546ac5b984713c0.png#pic_center)tbtb.rename(columns{支付金额:销售额,下单件数:订单数})tb[平台]淘宝records.append(tb[standard_cols])# 读取TEMU数据并标准化注意汇率换算temupd.read_csv(rC:\RPA_Data\TEMU\sales.csv)temu[销售额]temu[Revenue(USD)]*7.2temu[平台]TEMUrecords.append(temu[standard_cols])# 合并resultpd.concat(records,ignore_indexTrue)result.to_excel(rC:\RPA_Data\全平台汇总.xlsx,indexFalse)批量文件重命名下载文件自动整理影刀RPA采集数据时会下载大量文件文件名通常是平台默认的——如导出数据.xlsx、report_20260626.csv。需要批量添加日期、平台前缀。# 批量重命名添加日期前缀和平台标识importosimportshutilfromdatetimeimportdatetime source_dirflow.get_variable(download_dir)# 下载目录target_dirflow.get_variable(archive_dir)# 归档目录todaydatetime.now().strftime(%Y%m%d)platformflow.get_variable(platform_name)# 如 拼多多# 遍历下载目录中的所有文件forfilenameinos.listdir(source_dir):iffilename.endswith((.xlsx,.xls,.csv)):old_pathos.path.join(source_dir,filename)# 构造新文件名{日期}_{平台}_{原文件名}new_filenamef{today}_{platform}_{filename}new_pathos.path.join(target_dir,new_filename)# 移动并重命名shutil.move(old_path,new_path)print(f已归档:{filename}→{new_filename})根据文件内容智能重命名文件名看不出内容时读取Excel内容自动命名# 根据Excel内容智能重命名importpandasaspdimportos file_pathrC:\RPA_Data\unknown_file.xlsxdfpd.read_excel(file_path,nrows3)# 只读前3行判断内容# 根据列名判断文件类型columnsdf.columns.tolist()if成交金额instr(columns):file_type拼多多日报elif支付金额instr(columns):file_type淘宝日报elifRevenueinstr(columns):file_typeTEMU日报else:file_type其他数据# 尝试从数据中提取日期date_colNoneforcolincolumns:if日期instr(col)ordateinstr(col).lower():date_colcolbreakifdate_col:sample_datestr(df[date_col].iloc[0])[:10]# 取第一条数据的日期new_namef{file_type}_{sample_date}.xlsxelse:fromdatetimeimportdatetime new_namef{file_type}_{datetime.now().strftime(%Y%m%d)}.xlsxnew_pathos.path.join(os.path.dirname(file_path),new_name)os.rename(file_path,new_path)print(f智能重命名:{os.path.basename(file_path)}→{new_name})影刀RPA的文件操作指令整合TEMU店群矩阵自动化运营核价报活动在实际流程中文件合并和重命名作为一个子流程被调用子流程文件归档与合并 ├── [Python脚本] → 批量重命名添加日期前缀 ├── [移动文件] → 移入归档目录影刀指令库→文件操作 ├── [Python脚本] → 同类型文件合并 ├── [Python脚本] → 多平台数据统一格式合并 ├── [删除文件] → 清理原始下载目录可选 └── [返回] → 合并后的文件路径影刀RPA文件操作指令速查指令库→文件操作指令功能关键参数获取文件列表列出文件夹所有文件文件夹路径、文件类型过滤移动文件移动文件到新目录源路径、目标路径复制文件复制文件到新目录同上| 重命名文件 | 修改文件名 | 文件路径、新文件名 || 删除文件 | 删除指定文件 | 文件路径 || 判断文件存在 | 检测文件是否存在 | 文件路径 |常见问题/易错速查问题原因解决Pandas读取xlsx报错缺少openpyxl库pip install openpyxlCSV文件读出来中文乱码编码不是UTF-8尝试encodinggbk或gb2312合并后行数比预期少列名不一致导致数据被丢弃检查各文件列名是否完全一致合并后数据重复同一数据源多次导出加上drop_duplicates()去重文件名含特殊字符无法重命名Windows文件名字符限制替换掉 /?推荐资源Pandasread_excel完整参数文档——处理各种Excel格式合并单元格、多表头等影刀RPA「文件操作」系列指令帮助——右键指令→查看帮助正则表达式测试工具regex101.com——批量重命名时的模式匹配调试#影刀RPA #RPA自动化 #Excel合并 #文件处理 #批量重命名 #Pandas #数据清洗作者林焱本文为《影刀RPA学习手册》系列文章之一内容源于实操经验的整理与分享。