JS宏一键提取1000张表格指定数据
创作者俱乐部成员
⭐【案例描述】
下面文件夹中有很多个销售统计表,D列最后一行为合计金额,但每个表格的行数不一样,现在需要将每张表的公司名称与合计金额提取到一个表格中,如下图所示。
⭐【操作效果】
⭐【JSA代码】
按ALT+F11打开WPS宏编辑器,复制下方代码粘贴到编辑器中。
function 批量获取Excel文件指定内容(){
p = ThisWorkbook.Path +/销售统计表/ //获取表格路径
f = Dir(p+'*.xlsx') //获取excel文件名
let tsh=ActiveSheet //将当前工作表定义为tsh
i=2 //从第2行开始写入
while(f){ //循环直到文件名不为空
let wb = Workbooks.Open(p + f) //打开工作簿
let sh=wb.Sheets.Item(1) //将打开的第一张工作表定义为sh
let rg=sh.Range("d65535").End(3) //将D列的合计金额赋值给对象rg
gs=f.replace('.xlsx','') //将文件名后缀替换掉,得到公司名称
tsh.Cells.Item(i,'a').Value2=gs //将公司名称写入A列
tsh.Cells.Item(i,'b').Value2=rg.Value2 //将合计金额写入B列
wb.Close(false) //关闭工作簿,false为不保存
f=Dir()
i++ //每循环一次,行号+1
}
}
⭐【往期内容】
⭐【素材下载】
https://kdocs.cn/l/ci002POBr2Kv
创作者俱乐部成员
创作者俱乐部成员
创作者俱乐部成员
创作者俱乐部成员
社区管理员
创作者俱乐部成员
创作者俱乐部成员