【问题标题】:Prefill a Google Form using data from the last response使用上次回复中的数据预填充 Google 表单
【发布时间】:2014-11-26 15:26:12
【问题描述】:

我正在构建一个只有我自己使用的 Google 表单。我每天使用该表格 2 次(或多或少),我希望在某些字段中预先填写我最后一次回复的值,因为它们的值不会经常更改。

我将我的回复保存在一个谷歌电子表格中,以便我可以从那里获取它们,但我对 Google Apps 脚本非常陌生,我还没有看到有人打开表单来回答它时触发的事件。我什至不确定这样的事件是否存在......

而且,我想从始终相同的 URL 访问我的表单(所以不要这样预填充),因为我将 URL 保存为我的智能手机桌面上的收藏夹,并且不想每天都更改它: )

那么,有没有一种方法可以使用上次响应中的数据或至少在回答表单时触发的事件来预填充 Google 表单?

提前致谢

【问题讨论】:

    标签: google-apps-script google-forms google-sheets


    【解决方案1】:

    同时存在 On Form SubmitOn Open 触发器。在 Apps 脚本代码编辑器中,点击 资源 菜单。创建一个绑定到表单的 Apps 脚本。表单编辑器中有一个工具菜单。使用工具菜单打开 Apps 脚本代码编辑器。

    因此,从电子表格中检索最后一个值是可行的。我找不到任何让我认为您可以预先填写表单字段的内容。但我希望我是错的,有人知道答案。

    如果某个响应字段为空,您可以使用一个脚本将最后一个值简单地写入新行。因此,如果您想写入相同的值,请不要预先填写该字段,而是将其留空。虽然,如果您不知道该值是什么,您可能不知道那是否是您要再次输入的值。

    不过有办法解决这个问题。您可以将电子表格中的最后一个值写入表单项的帮助文本中。

    Google Documentation - Form Set Help Text

    因此,您可以通过查看帮助文本知道最后一个值是什么。

    或者我想知道您是否可以在列表项中设置选项:

    Google Documentation - Set Choices

    如果您想完成更多工作并学习 HTML,您可以使用 HTML 应用程序做您想做的事情。

    Google Documentation - HTML Service

    【讨论】:

    • 我已经看到了 open 事件,但它仅在您编辑表单时发生,而不是在有人回答时发生。表单提交也不是一个好的解决方案,因为显然我希望在回答问卷之前预先填写这些字段。出于同样的原因,我不能将电子表格最后一行的值放在帮助文本中,除非我每次在回答它之前打开表单编辑以触发打开事件。如果我的电子表格 onEdit 如果值为空,则复制最后一行的值的解决方案似乎可行。没想到。但这仍然不是最好的解决方案......无论如何,谢谢
    • 样式表 onEdit 解决方案给出的结果与实际在表单提交上预填充字段的结果相同...感谢 HTML 服务建议,但我想用谷歌表单来做。我已经知道 HTML,我只是渴望学习新的东西 :)
    【解决方案2】:
    1. 从表单编辑页面,选择菜单(3个点)->“获取预填链接”

    2. 填写表格并复制链接。

    3. 将链接加入书签或通过电子邮件发送给自己以供将来使用。

    【讨论】:

      猜你喜欢
      • 2016-03-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-14
      • 1970-01-01
      • 2022-01-24
      • 1970-01-01
      • 2018-01-06
      相关资源
      最近更新 更多