イベントハンドラとトリガー

Google Apps Scriptの勉強

イベントハンドラとトリガーについて。
「初心者のためのGoogle Apps Scriptプログラミング入門」より
スクリプトの実行とイベントハンドラ(2/5):初心者のためのGoogle Apps Scriptプログラミング入門 - libro

イベントに応じて何らかの処理を実行するためのもの
特に覚えておくべきは以下の2つの「シンプルイベントハンドラ」。

onOpen(event)スプレッドシートを開いたときに実行されます。開いたWebページをリロードした場合なども実行されます。

onEdit(event)スプレッドシートを編集したときに実行されます。編集中、あちこちのセルを書き換えるたびにイベントが発生し、このイベントハンドラが呼び出されることになります。

  • 使い方

/* シートを開いた時のイベントを指定 */
function onOpen(event){
var sheet = event.source.getActiveSheet();
sheet.getRange("A1").setComment("OPEN:" + event.user);
}

sheetには、イベント発生時にアクティブになっているシートが格納される。
setComment()はコメント挿入用関数。
event.userはシートを開いた人のアカウント名。

  • トリガーとは

特定のイベントが発生したら、指定の関数を実行するための仕組み。
インストーラブル・イベントハンドラ」と呼ばれる。
作成した関数をどのタイミングに実行するかをダイアログ上で選択できる。
選択は「リソースタブ」⇒「すべてのトリガー」または「現在のプロジェクトのトリガー」

「起動時」「フォーム入力時」だけでなく、
「イベント」をプルダウンすると「時間手動型」というものもあり、
定期的に更新を行うことができる。