8

ここで提案されている Google スクリプトの改善されたソリューションを実装しようとしていました: Google スプレッドシート: セルがテキストを変更したときに行の色を変更するスクリプト。.

しかし、スクリプトをデバッグした後、ドキュメントにアクセスできなくなりました。私のスクリプトが間違っているようで、ドキュメントを開くことができません...その結果、関連付けられた Google スクリプトを無効化/編集/削除できず、立ち往生しています!

このブロックの問題を解決する方法はありますか?

ありがとう、

ファビアン

更新:さらに調査した結果、問題の原因は、イベント トリガー onOpen() から呼び出される無限ループ スクリプトによるものと思われます。したがって、私の質問は次のように再定式化できます。

無限ループに陥る Google App スクリプトを停止するにはどうすればよいですか?

別のスクリプトを使用して、この誤ったスクリプトの実行を強制終了できますか?

4

6 に答える 6

4

実際、それは非常に簡単です。スクリプト ループで、グローバル変数を設定します。次に、それを停止したい場合は、スクリプトを結び付けて、グローバル var を false に設定し、たとえばボタン イメージに設定します。このような:

var RUNLOOP = true;

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

function stopLoop() {
  RUNLOOP = false;
}
于 2017-11-30T03:25:53.003 に答える
2

スクリプトが実行を停止するまでの約 6 分の制限があります。これは、トリガーで実行される関数に適用されます。ただし、スプレッドシートを開いたまま 6 分間待つことは間違いなく価値があります。

于 2013-02-15T15:41:26.480 に答える
1

スプレッドシートをコピーすると、トリガー メニューで作成されたトリガーが削除されます。問題のあるスプレッドシートのコピーを作成し、そこから移動してみてください。

ブラウザーの履歴にアクセスできる場合は、それを使用してプロジェクトのコードだけにアクセスします。

于 2013-02-15T23:03:14.157 に答える
1

次のアドレスにアクセスできます。

https://security.google.com/settings/security/permissions

スクリプトがインストールされているアカウントを使用し、(名前を使用して) スクリプトを見つけて削除し、機能しなくなるようにします。この操作により、スクリプトに与えられたすべての権限が削除されます。

于 2016-04-11T05:26:41.887 に答える