根据 Google 表单提交中同一行中的另一个值更改单元格的值

Changing value of a cell based on another value in the same row on Google form submit

本文关键字:单元格 另一个 一行 表单提交 Google 根据      更新时间:2023-09-26

我对Google表单和电子表格非常陌生,我想做的是我的表单中有一个"年龄"问题,当用户提交表单时,我想要它,以便如果年龄低于18,单元格将获得值"MINOR",如果是18岁或以上,则填充"MAJOR"。

基本上,我想根据"AGE"的值动态地向该单元格添加一个值。

我现在在做什么:

function myfunction(e) {
  var age = Number(e.values[3]);
  var minmaj;
  if (age < 18){
    minmaj = "MINOR";
  } else {
    minmaj = "MAJOR";
  }
  SpreadsheetApp.getActiveSheet().getRange(e,14).setValue(minmaj);
}

其中e,14是次要/主要值的单元格。

如果在表单响应数据右侧列的第 2 行中输入,此公式可能会根据需要工作:

=ARRAYFORMULA(IF(A2:A="",,IF(E2:E<18,"MINOR","MAJOR")))

它将自动检测新提交并根据 E 列中的值填充单元格

是的,简单的问题...

SpreadsheetApp.getActiveSheet().getRange(e,14).setValue(minmaj);
                                         ^

在该行中,您尝试将事件变量 e 用作行号。应该是这样的:

SpreadsheetApp.getActiveSheet().getRange(e.range.getRow(),14).setValue(minmaj);
                                         ^^^^^^^^^^^^^^^^
相关文章: