上个月行政部小王被领导拉进办公室——"上次活动的照片,1200张,按拍摄日期+序号重命名,下班前给我。"
小王以为是F2两次、Tab一次就能搞定的事。
结果打开文件夹一看:1200张照片分散在12个活动子文件夹里,文件名是"IMG_20240315_142356.jpg"这种相机默认的乱码。他右键重命名、复制、粘贴,改了50个就过了1小时。
最崩溃的是中间手抖改错一个——"IMG_20240315_14235_改.jpg"——再也找不回原名。你是不是也干过这种活?100张员工照片要加工号前缀、500个PDF发票要按月份分组、200份合同扫描件要按客户名命名……
说实话,改文件名这件事,Excel的"单元格思维"才是最强武器——你只需要在Excel里把新文件名"编辑"好,剩下的交给系统。
今天教你3招,Excel整理新名 + 一键批量执行,1000个文件最快10分钟搞定。同事F2到手抽筋,你喝杯咖啡就完事。三、核心技巧
招式一:Excel列编辑 + BAT批处理一键重命名(最经典方案)
适用场景:文件名是固定规则改名(如加前缀/后缀、替换某段、批量编号),文件数量几十到几千个。HR整理员工照片、行政整理活动照片、财务整理PDF发票,90%的改名需求都能套这招。
操作步骤(共5步):
- 在文件夹里Shift+右键→ "在此处打开命令窗口"(Win11是"在终端中打开")-先输入cmd回车
- 再输入
dir /b > 名单.txt→ 回车 → 自动生成名单.txt,里面是当前文件夹所有文件名(一行一个)- 打开名单.txt → Ctrl+A全选 → Ctrl+C复制 → 粘贴到Excel A列(旧文件名)
- 在B列用公式或手动编辑"新文件名"(如加前缀
员工_、加序号、加日期)- 在C列写公式生成ren命令 → 复制C列 → 粘贴到记事本 → 另存为"重命名.bat"(保存类型选"所有文件") → 双击运行核心公式:
="ren """&A12&""" """&B12&""""公式大白话解读:
ren是Windows改名命令(rename的缩写)- 公式里
"""是Excel公式的特殊语法:""是一对引号(一个转义引号字符),再加上末尾的"是字符串结束——所以"""整体表示"1个引号字符 + 字符串结束" - 整段公式生成的.bat命令是:
ren "070_Excel批量修改文件名_v3.md" "070_Excel批量修改文件名-华杰科技工作室.md" - 也就是.bat文件里看到的,是
ren "旧名" "新名"这种"ren+空格+带引号旧名+空格+带引号新名"的格式 - 为什么要引号?——文件名含空格时(如"员工 001.jpg")不加引号会报错版本兼容性:Windows 7/10/11全版本通用。Mac没有ren命令,需要用招四的第三方工具或Mac的mv命令。踩坑小提示:




- 文件名里有空格必须用引号包裹,否则CMD会把空格当分隔符报错"找不到文件"
- 双击.bat文件时如果弹出"无法加载脚本"提示,右键.bat → 属性 → 勾选"解除锁定"→ 确定
- 改名后原文件不会进回收站,执行前先把整个文件夹Ctrl+C Ctrl+V复制一份到备份,别问我怎么知道的
招式二:Excel函数自动生成新文件名(提取+拼接,函数党最爱)
适用场景:旧文件名里有"可识别的规律"(日期、工号、身份证、订单号),需要批量提取某段+拼接成新格式。比手动一个个改快10倍。
操作步骤(共4步):
- 按招一步骤1-3生成"名单.txt"导入Excel A列(旧文件名)
- 在B列用
MID/FIND/LEFT/RIGHT提取关键信息(日期/编号/姓名) - 在C列用
&拼接成新文件名 - 套用招一的ren公式 → 复制C列 → 粘贴到.bat → 一键执行核心公式(以"提取日期+拼接员工工号"为例,原文件名是
20240315_A001_张三.jpg格式): 提取拍摄日期(前8位数字):
=MID(A19,1,8) → 得到 "20240315"提取员工工号("日期_工号_姓名"格式中的工号段):
=FIND("_",A19) → 找到第一个"_"的位置(结果是9)
=MID(A19,10,4) → 从第10位开始截4位 → 得到 "A001"拼接新文件名(日期+工号+姓名):
=B19&"_"&D19&"_"&E19&".jpg"其中B列是日期、D列是工号、E列是姓名(人工提前填好)。
最终 ren 命令(在F列写):
="ren """&A19&""" """&B19&"_"&D19&"_"&E19&".jpg""公式大白话解读:
MID(文本, 起始位置, 长度)→ 从第5位开始截8位 = 1901940315FIND(找什么, 在哪找)→ 找到"_"在第几位LEFT(文本, 长度)→ 从左截指定长度&是文本连接符,把日期/工号/姓名拼起来进阶玩法——日期格式转换:
=TEXT(DATE(LEFT(A19,4),MID(A19,5,2),MID(A19,7,2)),"yyyy-mm-dd")把 20240315 变成 2024-03-15,命名更规范。

兼容性:Excel 2007及以上 / WPS 全版本支持。
踩坑小提示:
- 提取的"数字"实际是文本(如"20240315"是文本不是数字),拼接时无需转换,直接&就行
- 如果原文件名长度不一,
MID提取可能漏字符——先用LEN(A19)看长度,再决定取几位 - 公式写完后先在样本行测试3-5个,确认结果对了再下拉,否则1000行全错就悲剧了
招式三:Power Query 从文件夹批量处理(动态可刷新,加新文件不用重跑)
适用场景:文件夹会持续新增文件(比如每天都有人上传照片、每周都导出报表),不想每次都重新跑一遍流程。Power Query 一次设置,刷新就行。
操作步骤(共5步):
- 打开Excel → 数据 → 获取数据 → 自文件 → 从文件夹
- 选择目标文件夹 → 点"转换数据"(进入Power Query编辑器)
- 在PQ编辑器里点"添加列" → "自定义列"→ 输入列名"新文件名" → 在公式框写M语言公式
- 主页 → 关闭并上载 → 数据回到Excel
- 套用招一的ren公式 → 复制G列 → 粘贴到.bat → 一键改名核心公式(在Power Query的"自定义列"公式框中写):
"活动照片_"&Text.Start([Name],8)&"_"&Text.End([Name],4)公式大白话解读:
[Name]是Power Query"当前行的文件名"(Excel用A19,PQ用[Name])Text.Start(文本, 长度)= 从左取几位 = Excel的LEFTText.End(文本, 长度)= 从右取几位 = Excel的RIGHT- 拼接逻辑和招二完全一样,只是函数名换了Power Query的杀手锏:
- 以后文件夹新增文件,点Excel里的"全部刷新"按钮 → 新文件名自动出现在列表里
- 不需要再跑
dir /b命令,省了步骤1-3(适合"每周导出一次"的场景)兼容性:Excel 2016及以上 / Office 365 / Power BI 全支持。Excel 2013需装Power Query插件,WPS暂不支持。踩坑小提示: 


- Power Query 改名后不会自动修改磁盘上的文件名——它只生成新名列表,真正的改名还是得用招一的 .bat 命令
- 自定义列公式框写错时,PQ会红色报错——
=号别忘写,字符串要用英文双引号""包裹 - 如果文件夹里含子文件夹,PQ用
Folder.Files只会读取文件不读子文件夹,Folder.Contents会把子文件夹也显示出来——处理文件用 Folder.Files才对
四、进阶联动:3招组合打造"半自动改名流水线"
单招用是单点突破,组合用是生产线。
5步流水线(适合"每周固定整理"的场景):
- 用招三 Power Query 一次性从文件夹获取所有文件名(含未来新增的)
- 在Power Query里用
Text.Start/End/Middle函数生成新名(招二的PQ版本) - PQ加载回Excel → 用招一公式生成
ren命令 - 把
ren命令保存为.bat→ 双击执行改名 - 下次整理时→ 打开Excel → 点"全部刷新" → 新文件自动出现在名单 → 重新生成.bat → 改名对比单招的优势:
- 招一只适合"一次性改名"——下次新增文件还得重跑 dir 命令
- 招三可刷新但公式要重写
- 组合后:文件自动出现 + 新名自动生成 + ren命令自动拼好→ 每次整理5-10分钟踩坑提醒:

- Power Query默认会读取文件夹所有子文件,几百个子文件会让Excel卡顿——用
Folder.Files函数精确指定 - .bat 文件首次运行可能被杀软拦截(因为批量改文件像"脚本病毒"),加白名单或右键"以管理员身份运行"
- 改名后Ctrl+Z 撤销不了(CMD不记录Excel的撤销栈)——再次强调,先备份再执行!
五、高频场景(3个)
场景1:HR整理员工照片
500张员工工牌照,文件名是"IMG_001.jpg"格式。在Excel B列用 ="员工_"&TEXT(ROW()-1,"000")&"_"&D19&".jpg" 自动加"员工_001_张三.jpg"格式(D列是提前填好的员工姓名)。5分钟出名单,1分钟跑.bat,10分钟搞定。
场景2:财务整理发票PDF
200份PDF发票按月份归档。提取文件名里的月份字段(如"发票_202403_001.pdf"),用 MID(A19,FIND("_",A19)+1,6) 提取"202403",新名按月份分组。Power Query拉一次以后每月新增直接刷新。
场景3:行政整理活动照片
1200张照片按"日期+序号+活动名"重命名。先用招三PQ获取所有文件,PQ自定义列写:
"年会_"&Text.Start([Name],8)&"_"&Text.PadStart(Number.ToText([Index]),4,"0")&".jpg"其中 [Index] 是PQ自动生成的"行号"列(PQ菜单"添加列→索引列→从1开始"),Text.PadStart 给序号补零成4位。1200张照片10分钟搞定,比手动F2快100倍。

六、避坑指南(5个)
坑一:文件名含空格,ren命令报"找不到文件"
- 现象:双击.bat后黑窗口一闪而过,文件没改名
- 原因:CMD把"IMG 001.jpg"当成两个文件"IMG"和"001.jpg"
- 解决:公式里用三引号包裹
="ren """&A19&""" """&B19&"""",让生成的.bat命令带双引号坑二:双击.bat文件闪退,看不到错误 - 现象:黑窗口闪过,文件没变也看不到任何提示
- 原因:BAT执行完自动关闭窗口
- 解决:先在CMD里手动粘贴最后一行回车,看错误提示;或者在.bat末尾加一行
pause让窗口停留坑三:Power Query加载后新文件不出现 - 现象:文件夹里加了新文件,Excel里点"刷新"还是老名单
- 原因:PQ缓存了旧文件列表,没重新扫描
- 解决:点"数据" → "全部刷新"(不是"刷新"按钮),强制重读文件夹;或删了查询重建坑四:Mac电脑没有ren命令
- 现象:招一的.bat在Mac上跑不了
- 原因:ren是Windows CMD命令
- 解决:招一公式改成
mv -v "旧名" "新名"(Mac/Linux用mv),或者直接用第三方工具(如A Better Finder Rename)坑五:改名前没备份,改错了找不回原名 - 现象:把"IMG_001.jpg"误改成"001.jpg",原名丢了
- 原因:ren不保留原名,且Ctrl+Z撤销不了
- 解决:执行.bat前先Ctrl+C Ctrl+V复制整个文件夹到"备份"。养成习惯,2秒钟救命
学会了批量改文件名,你已经站在"批量处理"的门槛上。我整理了3套Excel批量处理实战模板:
- 模板①:批量改名模板(旧名+新名+ren命令生成器,3列联动)
- 模板②:文件清单整理模板(粘贴文件名+按规则填新名+一键生成.bat)
- 模板③:Power Query批量处理入门模板(从文件夹获取数据+自动整理)
模板已上传至「华杰办公助手」小程序,点击下方卡片即可直接下载,还有更多批量办公工具免费用。


你批量改过文件名吗?A. 一个个F2改到手抽筋 B. 写BAT/CMD命令 C. 用第三方工具(如Total Commander)D. 花钱找人改。评论区说说,你遇到最变态的改名需求是什么?抽3位朋友送「Excel批量处理50招」完整速查表。
夜雨聆风