【问题标题】:How to get onFormSubmit to trigger automatically?如何让 onFormSubmit 自动触发?
【发布时间】:2013-08-01 11:23:56
【问题描述】:

您提供的“修复”(test_onformsubmit)代码,每次电子表格中有新数据时,我都必须手动运行它。我希望它在提交表单时自动将 pdf 发送到电子邮件。有办法吗?因为手动方式完全按照预期运行代码,但我希望这是一个自动事件,所以我不必做任何事情。

See parent thread of original problem/question

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    阅读Understanding Triggers。该函数是一个可安装触发器,因此您需要将其设置为在提交表单时运行。这很简单 - 我原以为表单教程会逐步完成。

    在脚本编辑器中:

    1. 选择编辑 > 当前项目的触发器。您会看到一个面板显示消息 未设置触发器。点击此处立即添加。
    2. 点击链接。
    3. 运行下,选择您希望触发器执行的功能。 (在这种情况下是onFormSubmit()。)
    4. 事件下,选择从电子表格
    5. 从下一个下拉列表中,选择在表单提交上
    6. 点击保存

    从现在开始,只要将表单提交到电子表格,就会触发该函数。

    如果您计划共享您的脚本,每个收件人都需要重复这些步骤。


    顺便说一句,您应该更改脚本中的电子邮件设置,这样任何人都可以使用。

    var email_address = Session.getActiveUser().getEmail();
    

    【讨论】:

    • 我讨厌成为这样的新手,但我真的很想让它发挥作用,以便与其他教育工作者分享。这样,一旦他们提交表单,它就会自动创建他们回复的 pdf,并将 pdf 作为附件发送到他们的电子邮件地址。
    • 效果很好!感谢您的帮助。
    • 我们如何获得事件 e,我可以在许多教程甚至文档中看到,我们可以从中获得其他参数,如“e.values”等。当我使用 onFormSubmit(e) 时,它给了我错误:“TypeError:无法从未定义中读取属性“值”。”我也试过:“formSubmitReply(e)”,这又不起作用!
    • @Srichakradhar - 您在对 2 岁的答案发表评论时提出问题;最好先搜索一个答案(确实存在),然后提出一个新问题(如果您的搜索不成功)。看起来您正在编辑器中运行该函数,但它没有收到事件。见How can I test a trigger function in GAS?
    • 如果它也可以使用任何其他脚本文件中的函数就好了。
    猜你喜欢
    • 1970-01-01
    • 2023-03-03
    • 2021-05-15
    • 2013-08-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多