Google Sheets按指定关键词筛选及恢复显示的宏脚本需求
Google Sheets 筛选与恢复显示宏脚本
一、按指定关键词筛选行的宏脚本
该脚本会隐藏所有不包含目标关键词的行,仅保留匹配内容的行。
function filterByKeyword() { // 替换为你的工作表名称 const sheetName = "Sheet1"; // 替换为关键词所在列(如A列写"A:A",B列写"B:B") const keywordColumn = "A:A"; // 替换为你要筛选的目标关键词 const targetKeyword = "目标关键词"; const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName); const data = sheet.getDataRange().getValues(); // 从第2行开始遍历(跳过表头行) for (let i = 2; i <= data.length; i++) { const columnIndex = keywordColumn.charAt(0).charCodeAt(0) - 65; const cellValue = data[i-1][columnIndex].toString(); const shouldShow = cellValue.includes(targetKeyword); sheet.hideRows(i, 1); if (shouldShow) sheet.showRows(i, 1); } }
使用步骤:
- 打开目标Google表格,点击顶部菜单栏「扩展程序」>「Apps脚本」。
- 删除编辑器默认代码,粘贴上述脚本。
- 修改脚本中的
sheetName、keywordColumn、targetKeyword为你的实际需求值。 - 点击工具栏保存按钮,给函数命名(如
filterByKeyword)。 - 返回表格,点击「插入」>「绘图」,绘制按钮图形后保存,右键点击按钮选择「分配脚本」,输入函数名即可。
二、恢复显示所有行的宏脚本
该脚本会将所有被隐藏的行重新显示。
function showAllRows() { // 替换为你的工作表名称 const sheetName = "Sheet1"; const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName); const lastRow = sheet.getLastRow(); // 显示第2行至最后一行(若表头在第1行) sheet.showRows(2, lastRow - 1); }
使用步骤:
- 在Apps脚本编辑器中粘贴上述代码,修改
sheetName为你的工作表名称。 - 保存函数并命名为
showAllRows。 - 插入新按钮,分配脚本
showAllRows即可。
内容的提问来源于stack exchange,提问作者Arslan Agayev
相关产品推荐
相关产品推荐

