WPS JS 宏实践运用:批量修改学籍相片文件名
熟悉VBA的电脑员都知道,使用Excel来批量修改文件名,给我们带了十分方便的体验效果。从文件开始,将注重实践操作来运用WPS JS宏制作一些实际中工作运用的表格。欢迎网友提供素材,抽取部分为你免费制作。本例为:批量修改学籍相片名称。首先说说学籍相片的命名方式为学生本人身份证号码,注意身份证号含X的要大写。没有身份证的学生命名方式为:学校标识码_班号_姓名。要保持和系统内学生的身份证号一致。每个学生的学籍照片大小不能超过60kb。否则无法上传。上传文件的压缩格式是zip,名称可以自己定义比如XX班学籍相片.zip。表格式如下:
表宏按键如下:
宏程序思路:
1、确定当前工作文件名路径。使用ThisWorkbook.Path属性来确定当前工作薄路径。
2、使用Dir()方法获取文件名,使用while循环将原文件名写入工作薄。
3、使用try catch语句来判断获取最后文件名为空,如果为空表示所有文件读取完毕,结束循环。
二、生成新文件名。
1、使用End()方法获取列最后一个单元。
2、使用for of循环遍历数组,获取列的每一个单元。
3、使用if语句判断该学生是否存在身份证号码,没有身份证号码的按学校标识码_班号_姓名的文件命名方式命名。
function 生成新文件名(){ var endRange=Range( G9999 ).End(xlUp); for (let Rng of Range( G2 ,endRange)){ if (Range( E +Rng.Row).Value2!=undefined){ Range( H +Rng.Row).Value2=Range( E +Rng.Row).Value2 }else{ bVal=Range( B +Rng.Row).Value2 cVal=Range( c +Rng.Row).Value2 dVal=Range( d +Rng.Row).Value2 Range( H +Rng.Row).Value2=bVal+cVal+dVal }
宏程序思路:
1、使用typeof类型判断,单元格是否为空,如果为空则表示表格不存在数据,需要填写数据才能进行操作。
2、使用FileCopy()方法复制并修改文件名,这样既能不破坏原文件名,又可实现文件重命名的效果。
function 重命名文件(){ var pah=ThisWorkbook.Path; if(typeof Range( b2 ).Value()== undefined ){ alert( 数据表没有需要校验的数据! }else{ var endRange=Range( G9999 ).End(xlUp); //Console.log(pah+ \10月.xlsx ) try{ MkDir(pah+ \新文件名 catch(err){ alert( 新文件名 文件夹已存在!点击确定,将为你重命名文件! for(var Rng of Range( G2 ,endRang)){ try{ FileCopy(pah+ \ +Range( G +Rng.Row).Value2,pah+ \新文件名 + \ +Range( H +Rng.Row).Value2+ .jpg ) } catch(err){ alert( 你重命名的文件已存在,请清空文件重新执行! break; } alert( 重命名文件已完成,请查看 新文件名 文件夹! }
原表格获取方法,关注公众号:大内管家零零柒 发送内容:批量修改学籍相片文件名表格 即可。
0条评论