如何在打开Goog​​le电子表格文档时始终执行无限循环中的Google应用脚本?

fab*_*474 7 javascript google-sheets google-apps-script

我试图实现这里建议的谷歌脚本的改进解决方案:Google电子表格:当单元格更改文本时更改行颜色的脚本; .

但是,在调试我的脚本后,发生了我的文档不再可访问的情况.似乎我的脚本是错误的,并阻止我的文档打开...结果是我无法禁用/编辑/删除相关的谷歌脚本,我被卡住了!

你有办法解决这个阻塞问题吗?

谢谢,

法比恩

更新:经过进一步调查,似乎问题的原因是由于事件触发器onOpen()调用的无限循环脚本.所以我的问题可以重新表述为:

如何阻止进入无限循环的Google App脚本?

我可以使用另一个脚本来杀死这个错误脚本的执行吗?

lor*_*max 13

这是一个旧帖子,但以防万一:

转到"我的执行"标签中的Google Apps脚本项目页面:https://script.google.com/home/executions.

按状态过滤,以便您可以找到正在运行的项目.在右侧,您有三个圆点菜单,您可以在其中终止正在运行的项目.


Gen*_*ode 5

其实很简单。在脚本循环中,设置一个全局变量。然后,当您想要停止它时,连接一个脚本以将全局 var 设置为 false,例如按钮图像。像这样:

var RUNLOOP = true;

function YourLoop() {
  if (RUNLOOP) {
     // your code that does something every loop
  }
}

function stopLoop() {
  RUNLOOP = false;
}
Run Code Online (Sandbox Code Playgroud)


Sri*_*rik 2

脚本有大约 6 分钟的限制,超过该限制将停止执行。这适用于在触发器上运行的函数。但打开电子表格等待 6 分钟绝对值得。