19

私の機能には、メニューとトーストをドキュメントに追加することが含まれます。トリガー(onOpen)も設定されていることを確認しました。ユーザーが [ツール]、[スクリプト マネージャー]、[実行] に移動した場合にのみ機能します。あまりにも多くのバックグラウンドを持つユーザーが多すぎて、これを行う方法を知ることが期待できません。なぜ機能しないのですか?(クロムを使用)

function onOpen()
{
  var menus = [{name: "Advance in Workflow", functionName:"sendEmail"}];

     SpreadsheetApp.getActiveSpreadsheet().addMenu("Auto Advance FG Workflow", menus);

  //sheet.toast(Notify/Remind users);
   sheet.toast("While you are here we kindly ask that you do not add, modify or remove     any columns.","Welcome - " + username,8);
 }

ありがとう、

4

7 に答える 7

38

私は同じ問題を抱えていました。

Google がスクリプトのある種のキャッシュを作成する場合があることに気付きました (私は "テスト" スクリプトを使用することに慣れており、通常はその内容を変更し、スクリプトが実行されていないかのように実行されることもあります)。

したがって、 onOpen() が機能しないことを解決するために私がしたことは、関数名を変更し、手動でトリガーを作成することでした。

に行く

「リソース - >現在のスクリプトのトリガー...」に移動します

開いたときに実行する関数を選択します

開いたときに実行する関数を選択します

ここでは魅力のように機能しました!

更新された位置情報: ツールバーから または メニューバーから

それで

トリガーセレクト

于 2012-11-23T10:44:32.083 に答える
2

私の場合、参照エラーがあり、スクリプトを完全に停止することはできませんでしたが、メニューが表示されなくなりました。

スクリプトでデバッグを実行した後にのみ、そのエラーを検出できました。

Google スクリプトのデバッグ オプション

于 2016-10-24T14:01:54.190 に答える
0

「シート」が定義されていないことが問題のようです。そのため、トーストが失敗しています。

于 2012-11-15T03:18:26.770 に答える