Google Sheets:删除名称含竖线(|)的工作表标签页脚本
批量删除名称含竖线的Google Sheets工作表函数
以下是实现需求的函数代码,可识别并删除所有名称包含竖线(|)的工作表标签页:
function deleteSheetsWithPipe() { const ss = SpreadsheetApp.getActiveSpreadsheet(); const sheets = ss.getSheets(); // 倒序遍历工作表,避免删除操作导致索引错位 for (let i = sheets.length - 1; i >= 0; i--) { const sheet = sheets[i]; const sheetName = sheet.getName(); // 仅删除含竖线的工作表,且确保表格至少保留一个工作表 if (sheetName.includes("|") && sheets.length > 1) { ss.deleteSheet(sheet); console.log(`已删除工作表:${sheetName}`); } } }
代码说明
- 倒序遍历:删除工作表会改变工作表数组的长度,倒序遍历能避免因索引变化导致的漏删问题
- 安全判断:加入
sheets.length > 1的条件,防止误删所有工作表导致表格损坏 - 匹配逻辑:使用
includes("|")直接判断工作表名称是否包含目标竖线字符
和现有createpattern函数的配合
你可以单独运行deleteSheetsWithPipe函数来清理目标工作表,也可以在createpattern函数末尾添加调用(比如完成新建工作表后需要清理旧的),只需加入一行:
deleteSheetsWithPipe();
内容的提问来源于stack exchange,提问作者KRT - Loouna
相关产品推荐
相关产品推荐

