首页 > 解决方案 > 使用可安装触发器运行不完整 - gsheet 上的脚本

问题描述

脚本图片

我在 gsheet 中使用 google 脚本根据给定的标准自动复制一些行。当我手动运行脚本时,一切都按我的意愿完成。我设置了一个可安装的触发器来每天运行脚本。但它运行并且什么都不做(运行 2 秒 vs 手动运行 50 秒)。经过一番研究,我发现这可能是因为一些授权限制,但我不知道如何解决它。另一个信息是我不是 gsheet 的所有者,但我有编辑权限。这可能是原因吗?

标签: google-apps-scriptgoogle-sheets

解决方案


如果您使用 onEdit 触发器,它不起作用的原因是您执行自动复制

  • 由于限制onEdit,触发器 - 无论是简单的还是可安装的,都不会在非人工编辑时触发:

    脚本执行和 API 请求不会导致触发器运行。

  • 如果您对(有点复杂的)解决方法感兴趣 - 您可以制作一份与=ImportRange单元格公式同步的电子表格副本

  • 如果您将脚本绑定到副本并将触发器从更改onEditonChange- 它将在Importrange更新时触发 - 请参阅此处了解更多信息

如果您使用的是时间驱动的触发器,那么问题一定出在函数本身

对调试最有用的是在战略位置实现日志,尤其是循环内部和 if 语句


推荐阅读