簡體   English   中英

未在連接的Google表格中填充Google Form響應鏈接

[英]Google Form Response Link Not Getting Populated on Connected Google Sheet

我有一個谷歌表格和谷歌表連接。 該代碼似乎也正確,但是在運行腳本時出現錯誤-

“找不到方法getResponses(string)”

這是我為腳本准備的代碼。

var formURL = '1Ve6ihda_zQycSxaFbe2YkbegrxGbcTnNqacd_W7HQbh';
var sheetName = 'Form Responses 1';
var columnName = 'Edit Url' ;
var startRow = 3;

function getEditResponseUrls(){
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
  var headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues(); 
  var columnIndex = headers[0].indexOf(columnName);
  var data = sheet.getDataRange().getValues();
  var form = FormApp.openById(formURL);
  for(var i = startRow-1; i < data.length; i++) {
    if(data[i][0] != '' && data[i][columnIndex] == '') {
      var timestamp = data[i][0];
      var formSubmitted = form.getResponses(timestamp);
      if(formSubmitted.length < 1) continue;
      var editResponseUrl = formSubmitted[0].getEditResponseUrl();
      sheet.getRange(i+1, columnIndex+1).setValue(editResponseUrl);
    }
  }
}

拋出錯誤的行:

var formSubmitted = form.getResponses(timestamp);

問題:

錯誤消息指示timestamp的值是字符串類型。

解:

對於getResponses(timestamp)的方法,請使用date對象。 那么如何進行如下修改?

從:
 var formSubmitted = form.getResponses(timestamp); 
至:
 var formSubmitted = form.getResponses(new Date(timestamp)); 

注意:

  • 我認為getValues()檢索的日期值是date對象。 因此,可能需要知道var timestamp = data[i][0]

參考:

如果這不是您的問題的解決方案,對不起。 那時,我可以問一下timestamp和/或樣本電子表格的價值嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM