Google apps script 如何在Google表单中添加增量字段
我想用一个增量id创建一个google表单,并在提交google表单时向用户显示该id。我已经搜索了一些关于它的信息,但我没有根据我的需要得到答案。如果有人知道这方面的任何工作,请让我知道。我对谷歌表单不太了解 我搜索了一下,发现使用谷歌表单附加组件是可能的Google apps script 如何在Google表单中添加增量字段,google-apps-script,google-forms,Google Apps Script,Google Forms,我想用一个增量id创建一个google表单,并在提交google表单时向用户显示该id。我已经搜索了一些关于它的信息,但我没有根据我的需要得到答案。如果有人知道这方面的任何工作,请让我知道。我对谷歌表单不太了解 我搜索了一下,发现使用谷歌表单附加组件是可能的 我只想要一个包含4-5个字段和一个增量id的简单表单,并希望在提交表单时向用户显示该id。您不能这样做。因为 无法编辑当前响应 无法为窗体的字段设置默认值 你可以代替这个 /** * @typedef {Object} FormSub
我只想要一个包含4-5个字段和一个增量id的简单表单,并希望在提交表单时向用户显示该id。您不能这样做。因为
- 无法编辑当前响应
- 无法为窗体的字段设置默认值
/**
* @typedef {Object} FormSubmit
* @property {GoogleAppsScript.Forms.Form} source
*/
/**
*
* @param {FormSubmit} e
*/
function onsubmit(e) {
var form = e.source;
var c = form.getItems()[0].asListItem();
c.setChoiceValues([+c.getChoices()[0].getValue() + 1]);
}
请参见视频示例您需要合并从电子表格中动态提取的内容
可能解决方案的工作流程:
function onFormSubmit() {
var sheet=SpreadsheetApp.openById('ID OF YOUR DESTINATION SPREADSHEET').getActiveSheet();
var lastRow=sheet.getLastRow();
var id=lastRow-1;
FormApp.getActiveForm().setDescription('ID '+id);
}
- 将表单绑定到目标电子表格(如果尚未完成)
- 将脚本绑定到表单
- 撤回,例如,最后一个表单响应的行
- 使用此值(或根据需要修改)作为增量Id
- 将此增量ID合并到表单的标题或描述中
- 将a绑定到主函数
function onFormSubmit() {
var sheet=SpreadsheetApp.openById('ID OF YOUR DESTINATION SPREADSHEET').getActiveSheet();
var lastRow=sheet.getLastRow();
var id=lastRow-1;
FormApp.getActiveForm().setDescription('ID '+id);
}
请记住,更改需要几秒钟才能传播,如果表单以更高的频率提交,则ID可能不会直接更新