変数 = ScriptApp.newTrigger( 関数名 );これで変数にTriggerオブジェクトが設定されます。newTriggerの引数には、トリガーとして割り当てる関数名を指定します。返り値は、実はTriggerではありません。トリガーを生成するための「TriggerBuilder」というオブジェクトになります。これでトリガーの諸設定をしてから、最後にTriggerを生成します。
変数 = 《Trigger》.timeBased();timeBasedは「ClockTriggerBuilder」、forSpreadSheetは「SpreadSheetTriggerBuilder」というオブジェクトをそれぞれ生成し返します。これらそれぞれのオブジェクト内にあるメソッドを更に呼び出してトリガーの設定を行います。
変数 = 《Trigger》.forSpreadSheet( [SpreadSheet] );
変数 = 《Trigger》.forSpreadSheet( [SpreadSheet ID] );
変数 = 《ClockTriggerBuilder》.nearMinute( 分 );これらは、それぞれ「各秒ごと」「各時間ごと」「各週ごと」「各月ごと」に実行するためのClockTriggerBuilderを取得します。月を示すものが2つありますが、everyMonthsは毎月実行するもので、onMonthDayは「毎月○○日に実行」といった形で実行します。また、atDateは年月日を指定して、その日に実行させます。nearMinuteは、「だいたい」指定した分ごとに呼び出します。「だいたい」というのは、7~8分ぐらいの誤差はありますよ、ということです。
変数 = 《ClockTriggerBuilder》.atHour( 時 );
変数 = 《ClockTriggerBuilder》.everyMinutes();
変数 = 《ClockTriggerBuilder》.everyHours();
変数 = 《ClockTriggerBuilder》.everyDays();
変数 = 《ClockTriggerBuilder》.everyWeeks();
変数 = 《ClockTriggerBuilder》.everyMonths();
変数 = 《ClockTriggerBuilder》.onMonthDay( 日数 );
変数 = 《ClockTriggerBuilder》.atDate( 年 , 月 , 日 );
変数 = 《SpreadSheetTriggerBuilder》.onOpen();SpreadSheetTriggerBuilderのメソッドは比較的簡単です。onOpen、onEdit、onFormSubmitのそれぞれのイベントで実行するよう設定するメソッドが用意されているだけです。いずれも引数はなく、呼び出すだけで指定のイベントで実行するように設定されます。
変数 = 《SpreadSheetTriggerBuilder》.onEdit();
変数 = 《SpreadSheetTriggerBuilder》.onFormSubmit();
変数 = 《ClockTriggerBuilder》.create();返り値にはTriggerオブジェクトが渡されますが、Triggerを生成した段階でスクリプトにトリガーは設定されますので、返り値のTriggerは不要であれば受け取る必要はありません。作成されたトリガーの内容を確認するような場合にのみ取得すればよいでしょう。
変数 = 《SpreadSheetTriggerBuilder》.create();
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
function makeTrigger(){ var fname = Browser.inputBox("関数名:"); var trigger = ScriptApp.newTrigger(fname); trigger.timeBased().everyDays(1).create(); }
<< 前へ |