表单提交后,在Google表格中触发脚本

时间:2017-10-24 04:18:46

标签: triggers google-sheets libraries google-form onsubmit

我在我的某个Google工作表项目中有一个工作脚本,但现在我希望在我点击Google表单上的提交按钮时触发它。基本上,我的Google表单中的数据会导出到我的表单表格中,但之后我会有一个脚本来分析输入的数据。出于某种原因,当触发onSubmitForm()函数时,它似乎无效。显然存在问题,因为我的记录器测试行显示onSubmitForm函数,但不显示EvaluateResults函数。

我的Google表单中的代码很简单:

function onSubmitForm(){
   Logger.log("onSubmitForm Running");
   a.EvaluateResults();
}

Google表格中的代码也很简单:

function EvaluateResults(){
  Logger.log("evaluation running");
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet_results = ss.getSheetByName("Sheet2");
  var sheet_userForm = ss.getSheetByName("Form Responses 1");

  sheet_results.getRange("C24").setValue((sheet_userForm.getRange("A2").getValue());
}

1 个答案:

答案 0 :(得分:2)

您应该在Google表单脚本中编写整个函数。您可以在提交完成后立即从Google表单中收集回复。

function onSubmitForm(e){
  Logger.log("onSubmitForm Running");
  var itemResponses = e.response.getItemResponses();
  var emailAddress = itemResponses[1].getResponse(); // Response of second question
  Logger.log(emailAddress)
  var ss = SpreadsheetApp.openById("SS ID"); // Replace with your Spreadsheet Id
  var sheet_results = ss.getSheetByName("Sheet2");
  sheet_results.getRange("C24").setValue(emailAddress);
}