首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >完成Google表单后,如何在Google Spreadsheets中的现有工作表末尾创建新行?

完成Google表单后,如何在Google Spreadsheets中的现有工作表末尾创建新行?
EN

Stack Overflow用户
提问于 2019-05-10 06:41:21
回答 1查看 0关注 0票数 0

我正在尝试将关联的Google表单的回复保存到现有的Google表单中。更确切地说,电子表格显示员工的休假请求,包括员工的休假原因,请求的天数,请求的日期,经理的姓名等。基本上,表格要求员工提供这些信息。 谢谢!

我在这里想要实现的是将响应信息保存到已创建的电子表格中。根据Google的文档,只有两个选项: 1)创建新的电子表格:为Google表格中的回复创建电子表格 2)选择现有的电子表格:从Google表格中的现有电子表格中选择以存储回复 如果是选项#2,我可以在同一个电子表格中保存回复但是它将它们保存在新的表格中; 我正在尝试将响应保存在 一张表中。

我知道Google Form有一个脚本编辑器。是否可以运行将响应发送到电子表格的函数?也许是这样的?

function sendToSpreadSheet(e)
{
  var ss = SpreadsheetApp.openById("abc1234567");
  // Send response to spreadsheet

  // Populate cells accordingly
}

我对Google表单没有太多经验,所以我不确定如何解决这个问题。非常感谢任何建议。

EN

Stack Overflow用户

发布于 2019-05-10 15:47:42

试试这个:

您必须提供电子表格ID和SheetName。并为电子表格创建onFormSubmit触发器。

function saveResponse(e) {
  SpreadsheetApp.getActive().getSheetByName('SheetName').append(e.values);
}

要么

function saveResponse(e) {
  SpreadsheetApp.openById('id').getSheetByName('SheetName').append(e.values);
}

您可以使用以下内容创建触发器:

function createSetResponseTrigger(){
  createTrigger('setResponse');
}

function createTrigger(funcname) {
  if(!isTrigger(funcname)) {
    ScriptApp.newTrigger(funcname).forSpreadsheet(SpreadsheetApp.getActive()).onFormSubmit().create();
  }
}

还有这个

function isTrigger(funcName){
  var r=false;
  if(funcName){
    var allTriggers=ScriptApp.getProjectTriggers();
    for(var i=0;i<allTriggers.length;i++){
      if(funcName==allTriggers[i].getHandlerFunction()){
        r=true;
        break;
      }
    }
  }
  return r;
}

或者您可以使用“编辑菜单/当前项目触发器”手动创建它。

票数 0
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100009031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档