提交表单响应时删除单元格

时间:2018-12-20 08:45:33

标签: google-apps-script google-form

当Google表单重新提交时(当Google提供“编辑您的回复”时),我试图删除一系列单元格中的数据。

当前,我有以下代码:

LIKE

当我手动编辑行时(通过将F列中的值更改为V02),此方法非常有效。如果我尝试使用Google Form URL更改为V02,则该代码将无法运行。我将触发器设置为“编辑时”-我已经尝试过“更改时”和“提交表单时”,但是都没有用。我要去哪里错了?

1 个答案:

答案 0 :(得分:0)

提交Google表单时触发功能运行的唯一方法是为“表单提交”事件安装触发器。如果要处理两个不同的触发器,则需要两个不同的功能。

即使“表单提交”事件的事件对象与“编辑时”具有相同的range属性,我也不会通过该事件对象。我会得到范围,并通过它。

因此,为表单提交创建一个新功能,然后安装“在表单提交时”触发器。您将获得3个功能。

function runWhenFormSubmitted(e) {//Install with Form Submit trigger
  var rng = e.range;

  clearContentWhenEdit(rng);
}  

function runWhenCellEdited(e) {//Install with On Edit trigger
  var rng = e.range;

  clearContentWhenEdit(rng);
} 

function clearContentWhenEdit(rng) {
  if(rng.columnStart === 12 && rng.getValue() != 'V01') { 
    rng.offset(0,81,1,5).clearContent();
  }
}