0

我的工作表中有三列Google表单存储响应数据:性别,姓名和电子邮件。 如果用户发送Gender-field值等于“Male”的表单,我想将此响应存储到名为“Males”的现有表单中。 这里是我的解决方案(我已经添加了特殊的触发它,这里是事件亨德勒执行力度),但它不工作:对提交的Google表单响应进行排序

function onItemAdd(e) { 
    var formData = e.values; 
    if (formData[0] == "Male") { 
    SpreadsheetApp.setActiveSheet(ss.getSheets()[1]); 
    var form = FormApp.getActiveForm().getResponses(); 
    var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Males").getDataRange().getValues()[0]; 
    var formRow = e.range; 
    var filteredCell = formRow.getCell(1, formRow.getLastColumn()).offset(0, 1).setValue(formData); 
    } 
} 
+0

另一种方法可能是使用公式从工作表中过滤出数据。您可以使用ez查询工具插件轻松创建仅包含男性的活动工作表。 –

回答

0

没有values属性为在表单提交事件对象。 On Form Submit事件对象只有3个属性。

  • authMode
  • 响应

source得到的形式。 response获取表单响应。

var thisResponse = e.response.getItemResponses(); 
var gender = thisResponse[0].getResponse(); 

Logger.log('gender: ' + gender); 
相关问题