可安装在编辑触发器未触发

时间:2017-12-14 22:43:30

标签: google-apps-script google-sheets triggers

我有一个附加到Google表格的容器绑定脚本,我已手动添加了一个On edit可安装触发器。我使用可安装的触发器而不是简单的触发器,因为无论用户是谁进行编辑,我都希望脚本从工作表所有者的帐户(我的帐户)运行。脚本如下:

function checkTimecardRange() {
  var activeSS = SpreadsheetApp.getActiveSpreadsheet();
  var activeSheet = activeSS.getActiveSheet();
  var cell = sheet.getActiveCell();
  var row = cell.getRow();
  var approvalTimestamp = activeSheet.getRange("V" + row);
  var timecardRange = activeSheet.getRange("A" + row + ":V" + row);
   if(timecardRange.isBlank()==false) { 
    lockTimecardRange(timecardRange, row);
  }
}


function lockTimecardRange(timecardRange, row) {
  var protection = timecardRange.protect().setDescription('Timecard Row' + row);
  protection.removeEditors(protection.getEditors());
  if (protection.canDomainEdit()) {
   protection.setDomainEdit(false);
 }
}

我手动运行它时工作正常,但我为它设置的On编辑触发器不会触发。我将触发器更改为测试脚本:

function log(){
  console.log("Hello worlds");
}

并且它也不会发射。任何有关获取onEdit可安装触发器的帮助都将非常感激。我希望触发器触发的编辑是手动编辑(此时我只是输入随机值),它们是由拥有工作表并创建脚本的帐户制作的。

1 个答案:

答案 0 :(得分:2)

嗯,事实证明这是谷歌方面的一个小故障。我所要做的就是删除触发器,保存,然后重新添加触发器而不做任何更改,一切正常。去图。