使用Apps Script生成工作表名列表时如何排除指定工作表
脚本修改方案
在原有遍历逻辑前先定义需要排除的工作表名称列表,遍历过程中判断当前工作表属于排除范围时直接跳过,即可过滤不需要的表名。
修改后的可直接使用的代码:
function sheetnames() { // 配置需要排除的工作表名称,可根据实际需求增删列表内的内容 var excludeSheetNames = ["Sheet 2", "Sheet 4"]; var out = new Array() var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets(); for (var i=0 ; i<sheets.length ; i++) { var currentSheetName = sheets[i].getName(); // 仅当表名不在排除列表中时,才写入输出数组 if (excludeSheetNames.indexOf(currentSheetName) === -1) { out.push( [ currentSheetName ] ) } } return out }
使用说明
- 调整排除范围只需要修改
excludeSheetNames数组内的字符串即可,比如要排除"统计表"就把该字符串加到数组里 - 名称匹配为精确匹配,填写的表名需要和Google Sheet里的实际工作表名完全一致,包含空格、大小写都要对应
- 这里用
indexOf做判断是为了兼容老版本Apps Script运行环境,不会出现兼容性问题
内容的提问来源于stack exchange,提问作者Søren Jespersen
相关产品推荐
相关产品推荐

