小编Arl*_*ory的帖子

Google Script onedit(e) 事件仅限于特定工作表和特定范围

我已经搜索并找到了我正在寻找的大部分内容。我对我发现的内容进行了一些修改,并且它有效......主要是。但是,当我在 C 列的不同工作表中进行编辑时,它会运行数据表中的 onedit()。我不希望那样,我无法让它停止。

我只希望它监视“数据”表。对于范围 C3:C5000 或 C3:C+lastrow 这将是理想的。不应超过 5000 行。

function onEdit(e) {  
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var data_sheet = ss.getSheetByName("Data");
  var editRange = ss.getActiveRange();
  var editRow = editRange.getRow();
  var editCol = editRange.getColumn();
  var range = data_sheet.getRange("C3:C5000");
  var rangeRowStart = range.getRow();
  var rangeRowEnd = rangeRowStart + range.getHeight();
  var rangeColStart = range.getColumn();
  var rangeColEnd = rangeColStart + range.getWidth();
  if (editRow >= rangeRowStart && editRow <= rangeRowEnd 
      && editCol >= rangeColStart && editCol <= rangeColEnd)
  {
    RefreshImport2();
   }
}
Run Code Online (Sandbox Code Playgroud)

google-sheets google-apps-script

3
推荐指数
1
解决办法
4896
查看次数

标签 统计

google-apps-script ×1

google-sheets ×1