提交表单后重置 Google 表格



有没有办法在表单提交后的一段时间内使用脚本从工作表中删除数据? 我正在尝试将工作表用作附加了表单的数据库。用户使用表单选择所需的数据。然后,这会使用请求填充工作表,然后使用 vlookups 从工作表上的另一个选项卡中选择相应的数据。然后,我使用AutoCrat为用户生成带有此数据的Google Doc。 我遇到的问题是,为了使AutoCrat与vlookups正常工作,我需要在AutoCrat运行后重置工作表。理想情况下,工作表根本不需要作为表单提交时的AutoCrat触发器打开。有没有办法在表单提交后的某个时间使用脚本从工作表中删除数据?

您可以使用onFormSubmit触发器。

片段

function createTrigger() {
var form = FormApp.openById('FORM_ID');
ScriptApp.newTrigger('deleteFunction')
.forForm(form)
.onFormSubmit()
.create();
}
function deleteFunction() {
Utilities.sleep("TIME_IN_MS");
//delete unnecessary data
}

解释

上面的代码由两个函数组成:

  • createTrigger哪个函数是创建onFormSubmit触发器并将其附加到deleteFunction函数的函数;

  • deleteFunction用于删除所需数据;为了添加删除数据的特定延迟/时间,添加了Utilities.sleep()

参考

  • 应用脚本触发器;

  • 应用程序脚本 - 在表单提交(( 触发器;

  • 应用程序脚本实用程序类 - sleep((。

最新更新