我知道以下一行: form.setDestination(FormApp.DestinationType.SPREADSHEET,ss1.getId());
但我正在尝试将表单提交到appendRow / submit到电子表格ss1中的特定表单。在谷歌应用程序脚本中以任何方式做到这一点?以上只是指向电子表格ss1并在该电子表格中创建“表单响应”表。
提前感谢您的指导!
P.S。对于更多背景,我正在尝试设置一个表单,将费用数据发送到我的预算google工作表文件,该文件具有目标工作表名称的“当前月份”格式。
答案 0 :(得分:1)
您可以编写自定义事件处理函数(在表单 NOT 的电子表格脚本编辑器的脚本编辑器中)并将其绑定到表单提交事件通过可安装的触发器(see documentation)。
在函数体内,您可以引用要传递表单数据的电子表格和目标表。但是,您必须知道Form Service APIs以及如何手动提取和格式化表单的响应者数据,因为您不会受益于拥有"链接"绑定到表单的电子表格。
所以你可以编写一个事件处理函数(来自Form&#39的脚本编辑器),如下所示:
var SPREADSHEET_ID = "[Your spreadsheet ID]",
SHEET_NAME = "[Your sheet name]";
function onFormSubmit(e) {
var sheet = SpreadsheetApp.openById(SPREADSHEET_ID).getSheetByName(SHEET_NAME),
form = FormApp.getActiveForm();
// Extract and format form data and inject it into the sheet
}
准备好该功能后,您可以创建一个可安装的触发器,通过工具栏中的“编辑”菜单命令将其绑定到表单“脚本编辑器”中的表单提交事件。 Here is a link to the steps you'll need to follow to create the trigger
希望有所帮助。