JS宏制作批量提取文件名和重命名工具

懒人办公
懒人办公

创作者俱乐部成员

【功能描述】

  1. 提取文件名。点击“提取文件名”按钮,可将原文件夹中的所有类型文件全部提取到A列原文件区域。

  1. 修改文件名。点击“修改文件名”按钮,可将原文件名批量命名为新文件名,并将新文件复制到新文件夹中。

【功能演示】

【JSA代码】

按ALT+F11打开WPS宏编辑器,复制下方代码粘贴到编辑器中。

function 读取文件名(){

Range("a4:a999").Clear()//清空单元格

r=3; //记录写入位置

f=Dir(Range('b1').Value2); //获取文件名

while (f){ //遍历文件名

Range("a"+ ++r).Value2=f;//将文件名写入A列,每次向下偏移一行

f=Dir(); //获取下一个文件名

}

alert("文件名提取完成!");

}

function 重命名文件(){

n=Range('a65535').End(xlUp).Row //获取A列最后一行

if(typeof Range("a4").Value()=="undefined"){ //判断a4单元格是否有值

alert("原文件不能为空!"); //弹出提示框

}else{ //如果a4单元格有值,则往下执行

for(var Rng of Range("a4:a"+n)){ //从A4单元格执行到最后一行

try{ //出错控制

f1=Range('b1').Value2+Range("a"+Rng.Row).Value2 //原文件名

lx= '.'+f1.split(".").pop()//用"."将f1分割成一个数组,用pop取出最后一个元素,即文件的后缀名。

f2=Range('b2').Value2+Range("b"+Rng.Row).Value2 //新文件名

FileCopy(f1,f2.replace(lx,'')+lx) //将文件命名后复制到新文件夹

}

catch(err){ //出错时执行

alert("重命名文件已存在,请清空文件重新执行!"); //弹出提示

return; //结束程序

};

}

alert("命名完成!请查看文件夹:"+Range('b2').Value2); //成功提示

}

}

【往期内容】

1.对明细数据分类汇总,统计库存

2.两表按关键字相互链接,快速查找定位

3.批量创建和删除工作表

4.批量将工作表拆分为独立工作簿

5.批量将工作簿合并为工作表,免费实现会员功能

6.实时查询数据,高端的效果,往往只需要简单的代码

7.按照内容拆分工作表,免费实现会员功能

8.批量合并工作簿,免费实现终极会员功能

9.自动核对报表报送情况,表姐表妹的福音来了

10.以指定单元格内容批量命名表格文件

11.用工作表做数据库,将出库单保存为出库明细

12.用AI拆分工作表,一句话就能搞定

13.在表格中按名称批量插入对应图片

14.按分隔符拆分数据

15.合并同类项,按部门合并姓名,并用顿号隔开

【素材下载】

https://kdocs.cn/l/clzAY1KWDuFz

贵州省
浏览 8732
6
25
分享
25 +1
26
6 +1
全部评论 26
 
韩宇帆
FileCopy不可用?
· 浙江省
回复
 
邢
Linux下如何使用?
· 陕西省
回复
 
清风
超赞
· 云南省
回复
 
瑞年
FileCopy提示不可用,啥情况
· 河南省
回复
韩宇帆
解决了吗
· 浙江省
回复
 
&
这个Dir("path)能获取到文件对象?我这测试它连循环都进不去,f是个空字符串 function init2222(){ f = Dir("D:/Temp") while(f){ Debug.Print(f) Debug.Print(1) f = Dir() } }
· 北京
回复
&
已经找到问题,f = Dir("path"+'\\')即可
· 北京
回复
 
Mr.H ℡¹³⁸⁵¹¹⁹⁰⁵⁹⁹
优秀,得好好学
· 江苏省
回复
 
飞飞
通俗易懂,简单易学,值得学习,很赞!
· 广东省
回复
 
?
非常实用,爆赞
· 北京
回复
 
WPS_1602233629
非常实用,杠杠的
· 云南省
回复
 
李胜利
通俗易懂,简单易学,值得学习!
· 山西省
回复
 
01418100676
日常工作重要超需要这样简单易懂好操作的代码
· 广东省
回复
 
安静
通俗易懂,简单易学,值得学习!
· 江苏省
回复
 
细胞先生
干货,通俗易懂,非常实用!
· 福建省
回复
 
许小小
看得懂,超级想要,谢谢!
· 云南省
回复
 
江
通俗易懂,简单易学,值得学习!
· 山东省
回复
江
怎么截图
· 山东省
回复
 
奋斗吧〆青年°
通俗易懂,简单易学,值得学习!
· 云南省
回复
 
A0000A0壹路行汽车管家
简单易懂!
· 新疆
回复
 
微笑
精讲简单,通俗易懂
· 浙江省
回复
 
volia
通俗易懂、太好用啦
· 上海
回复
 
WPS_1678612059
精讲简单,通俗易懂
· 海南省
1
回复