Google将电子表格信息添加到Google表单中

时间:2013-10-21 15:53:03

标签: google-apps-script google-sheets

如何将Google电子表格中的信息恢复为google表单以更新信息?

我希望能够通过表单再次提取我已经通过Google表单提交的信息来更新信息。我知道我可以去编辑电子表格,但出于我的目的,通过表单更容易。我一直无法找到允许我这样做的脚本。有没有人有任何建议?

1 个答案:

答案 0 :(得分:3)

您可以在Apps脚本中使用FormApp来访问表单对象以进行更新。

以下是更新“从列表中选择”对象的示例。如果您想在每次提交后更新表单,可以使用基于容器的触发器“On form submit”调用updateList函数。

function updateList(){
  var form = FormApp.openById(formId);
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
  // get the range of values to update in the form
  var data = sheet.getRange(2,1,sheet.getLastRow(),sheet.getLastColumn()).getValues();

  var listItemsToAdd = [];
  for(s in data){
    if(logic to define if to add to the form){
      listItemsToAdd.push(data[s][0]);
    }
  }

  // get all the list items in the form
  var list = form.getItems(FormApp.ItemType.LIST);
  // grab the first list item in the array of the form's list items
  var item = list[0].asListItem();
  // set the options to the array just created
  item.setChoiceValues(listItemsToAdd);
}