【WPS JSA】提取工作簿工作表目录及表头信息

大家好,我是宽吻鳄。这里是「宽吻鳄画表勒格记」——专注WPS表格硬核技巧,每期干货,让你的工作效率直线飙升!欢迎关注,咱们一起解锁更多高效技能!
以前,分享了提取工作表目录JSA代码,运行后可以一目了然看清工作簿中有哪些工作表。在这个基础上,我们也可将将工作表中的相关信息都提取出来,用于数据审核或校对文本,避免人工一个一个工作表查看,人工查看时,特别是工作表很多的情况下,有的错误可能看到了但会遗漏,会造成工作的失误。
凡是涉及批量或重复性操作,JSA(JavaScript for Application)宏代码都能帮你一键完成,秒速搞定!今天,重点介绍提取工作簿工作表目录及表头信息,用于校对或审核数据。
来吧,直接上代码。
【WPS JSA】代码:
function 提取工作簿工作表目录及表头信息_新建表(){try {const workbook = Application.ActiveWorkbook;const sheets = workbook.Worksheets;// 1. 删除已存在的"目录"工作表(不提示)Application.DisplayAlerts = false;try {let existingSheet = workbook.Worksheets.Item("目录");existingSheet.Delete();} catch(e) {// 工作表不存在,继续执行}Application.DisplayAlerts = true;// 2. 在最左边创建新工作表并命名为"目录"let newSheet = workbook.Worksheets.Add(workbook.Worksheets(1));newSheet.Name = "目录";// 3. 设置表头(7列)newSheet.Range("A1:G1").Value2 = [["工作表名称", "编号", "表眉1", "表眉2", "表头标题一", "表头标题二", "表头标题三"]];// 4. 遍历所有工作表,提取数据let dataRow = 2; // 数据从第2行开始let totalSheets = 0;let cnt = sheets.Count;for(let i = 1; i <= cnt; i++) {let sheetName = sheets.Item(i).Name;// 跳过"目录"工作表本身if(sheetName !== newSheet.Name) {let sourceSheet = sheets.Item(i);// 写入工作表名称newSheet.Cells(dataRow, 1).Value2 = sheetName;// 写入编号(从N1开始)newSheet.Cells(dataRow, 2).Value2 = "N" + (dataRow - 1);// 写入表眉1(A1)newSheet.Cells(dataRow, 3).Value2 = sourceSheet.Range("A1").Value2 || "";// 写入表眉2(A2)newSheet.Cells(dataRow, 4).Value2 = sourceSheet.Range("A2").Value2 || "";// 写入表头标题一(A5), 表头标题二(A6), 表头标题三(A7)newSheet.Cells(dataRow, 5).Value2 = sourceSheet.Range("A5").Value2 || "";newSheet.Cells(dataRow, 6).Value2 = sourceSheet.Range("A6").Value2 || "";newSheet.Cells(dataRow, 7).Value2 = sourceSheet.Range("A7").Value2 || "";dataRow++;totalSheets++;}}// A:G列设置为文本格式并自动调整列宽newSheet.Columns("A:G").NumberFormat = "@";newSheet.Columns("A:G").AutoFit();// 冻结首行,方便查看newSheet.Rows("1:1").Select();Application.ActiveWindow.FreezePanes = true;// 选中A1单元格newSheet.Range("A1").Select();// 8. 提示完成MsgBox(`✅ 操作完成!\n已成功提取 ${totalSheets} 个工作表的名称及表头信息!`, 0, "提取目录及工作表表头信息完成");} catch(error) {MsgBox("❌ 操作失败:" + error.message, 0, "错误");}}
基本操作步骤:
方法一:
1.打开你的WPS表格文件。按下 Alt + F11(或点击「开发工具」→「WPS宏编辑器」),打开WPS JSA编辑器。
2.插入模块并粘贴代码。在编辑器左侧右键点击「项目」中的当前工作簿,选择「插入」→「模块」,将代码完整复制到右侧代码窗口中。
3.回到WPS表格界面,点击「开发工具」→「运行宏」,找到相应宏,点击「运行」即可。
方法二:
1.打开你的WPS表格文件。按下 Alt + F11(或点击「开发工具」→「WPS宏编辑器」),打开WPS JSA编辑器。
2.按Ctrk+O键,导入相应js文件,就导入js文件。
3.回到WPS表格界面,点击「开发工具」→「运行宏」,找到相应宏,点击「运行」即可。
在示例中已保留完整代码,可以动手试一试,直观感受实际效果。如果觉得好用、对工作有所助益,欢迎点个赞,或转发给身边的同事和朋友。更期待你在留言区分享使用中遇到的问题,我们一起交流探讨。
每一次互动,都值得期待。让我们共同成长
往期内容推荐:
【WPS JSA 】一键提取工作簿中所有工作表名称,如果工作表名称与表格的标题又是一样的,那就一不小心生成了文件目录了。
【WPS JSA】提取工作簿工作表目录并超链接,快捷切换工作表!

可下载以下资料查看测试:
夜雨聆风