【问题标题】:Triggering Script in google Sheets after Forms Submit表单提交后在谷歌表格中触发脚本
【发布时间】:2017-10-24 04:18:46
【问题描述】:

我的一个谷歌表格项目中有一个工作脚本,但现在我希望在我点击我拥有的谷歌表单上的提交按钮时触发它。基本上,我的 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());
}

【问题讨论】:

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


    【解决方案1】:

    您应该在 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);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多