每当列E的单元格值>单元格值G1时,我都试图设置电子邮件触发器。

G1是动态的,因此我不能只输入一个固定值。我为G1的值创建了变量q3,为列E的数组值创建了变量vA。

这是代码,但是由于不了解循环中的q3值,我的脚本无法启动。我想知道它是否是语法问题。任何帮助表示赞赏。

function readCell() {
  var ss=SpreadsheetApp.getActive();
  var sh=ss.getSheetByName('test');
  var q3=SpreadsheetApp.getActiveSheet().getRange('G1')
  var vA=rg.getValues();


      if(Number(vA[i][5])>q3) {
        MailApp.sendEmail('[email protected]','Hello World!')
      }
    }

最佳答案

在q3变量中,您仅存储range [参考G1],而不存储G1的实际值。

您可以尝试这样的事情。

function readCell() {
  var spreadsheet=SpreadsheetApp.getActive();
  var sheet=spreadsheet.getSheetByName('test');
  var G1_value=sheet.getRange('G1').getValue();
  var E_values=sheet.getRange('E1:E').getValues();

  for (var i=0; i<E_values.length; i++) {
     if (Number(E_values[i][0]) > Number(G1_value)) {
        MailApp.sendEmail('[email protected]', 'Subject', 'Body');
     }
  }
}

关于javascript - 包含固定单元格引用的触发器未触发,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54249013/

10-11 23:56