如何使用VBS按指定名称批量重命名文件?附已获取的解决方案
循环批量重命名文件的VBScript解决方案
嘿,针对你需要循环使用预设新名称批量重命名文件的需求,我整理了一套经过验证的VBScript实现方案,亲测稳定好用,具体代码和说明如下:
Dim fso, folder, file, folderName, dict ' 目标文件夹路径,请替换为你的实际路径 folderName = "X:\Test\3rd Party" ' 建立旧文件名 → 新文件名的映射字典 Set dict = CreateObject("Scripting.Dictionary") dict.Add "MyFile.xlsx", "Mine.xlsx" dict.Add "YourFile.xlsx", "Yours.xlsx" dict.Add "HisFile.xlsx", "His.xlsx" dict.Add "HersFile.xlsx", "Hers.xlsx" dict.Add "TheirFile.xlsx", "Theirs.xlsx" dict.Add "OurFile.xlsx", "Ours.xlsx" ' 创建文件系统对象,用于操作文件和文件夹 Set fso = CreateObject("Scripting.FileSystemObject") Set folder = fso.GetFolder(folderName) ' 遍历目标文件夹中的所有文件 For Each file In folder.Files ' 如果当前文件名在映射字典中存在,则执行重命名 If dict.Exists(file.Name) Then file.Name = dict(file.Name) End If Next ' 释放所有创建的对象,避免资源占用 Set file = Nothing Set folder = Nothing Set fso = Nothing Set dict = Nothing
关键细节说明
- 路径配置:把代码里的
folderName值替换成你实际要操作的文件夹绝对路径,路径里有空格直接写即可,无需额外转义 - 映射字典:你可以根据需求自由添加或修改
dict.Add的键值对——键是旧文件名(带扩展名),值是新文件名(带扩展名) - 安全提示:执行前建议先备份目标文件夹的文件,避免意外操作导致文件丢失;如果文件夹内有与新文件名重名的文件,脚本会报错,记得提前清理或调整映射名称
内容的提问来源于stack exchange,提问作者TurboCoder
相关产品推荐
相关产品推荐

