嗨,我正在尝试编写一个自定义函数,该函数采用一对单元格,遍历电子表格中的所有工作表以找到相同匹配的单元格对,并从同一行返回另一个值。
背景; 表 0 是所有 LOA 和 ID 组合(主要是位置和序列号)的主表,需要填写检查日期。进行这些检查的人使用 LOA-ID 组合 + 谷歌上的检查数据更新他们的个人工作表驾驶。我试图让主表在添加此数据时自动更新。
这些表都遵循相同的格式(LOA,第 1 列和第 2 列中的 ID,第 14 列中的检验日期)。这是我正在使用的自定义函数,可以按照我的意图进行操作,但运行速度非常慢。我如何使这个运行更快?每个细胞需要几秒钟;我需要运行超过 10k + 单元格。
function findMatch(LOA,GRID) {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheets = ss.getSheets();
  var returnDate = "not found"
  for (var sheetNum = 1; sheetNum < sheets.length; sheetNum++){
     var ws = ss.getSheets()[sheetNum]
       for (var count = 1; count<ws.getLastRow(); count++){
       if (ws.getRange(count,1,1,1).getValues()==LOA && ws.getRange(count,2,1,1).getValues()==GRID)
       {
       returnDate = ws.getRange(count,14,1,1).getValue()
       break;
       }
       else
    {
    }  
       }
  }
  Logger.log(returnDate)
  return returnDate