You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Google Script将谷歌表格搜索范围扩展到所有工作表

修改方案

你只需要替换原有代码里的search函数即可,修改后逻辑会自动遍历当前表格的所有工作表执行搜索,匹配规则和原有逻辑完全一致:

function doGet(e) {
  return HtmlService.createTemplateFromFile("Index").evaluate()
    .setTitle("WebApp: Search By Password")
    .addMetaTag('viewport', 'width=device-width, initial-scale=1')
    .setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL);
}

/* 处理表单提交 */
function processForm(formObject) {
  var concat = formObject.searchtext + formObject.searchtext2;
  var result = "";
  if (concat) {// 存在搜索内容时执行
    result = search(concat);
  }
  return result;
}

// 匹配搜索内容
function search(searchtext) {
  var spreadsheetId = ' '; //** 请修改为你的表格ID !!!!
  // 获取当前表格所有工作表
  var sheets = SpreadsheetApp.openById(spreadsheetId).getSheets();
  var ar = [];
  // 遍历每个工作表
  sheets.forEach(function(sheet) {
    var range = sheet.getDataRange();
    var data = range.getValues();
    // 遍历当前工作表每行数据
    data.forEach(function (f) {
      // 原有匹配规则:判断第9列(索引为8)是否包含搜索词
      if (~[f[8]].indexOf(searchtext)) {
        ar.push([f[2], f[3], f[4], f[5], f[6], f[7]]);
      }
    });
  })
  return ar;
}

可选配置:如果你需要排除部分工作表不参与搜索,可以在遍历工作表的逻辑内加判断,比如要跳过名为统计汇总的工作表,只需在sheets.forEach的回调函数第一行加如下代码:

if(sheet.getName() === '统计汇总') return;

内容的提问来源于stack exchange,提问作者ahsan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 01:24:02