GoogleAppsScriptでは、イベントに応じて関数を動かすことができます。
関数名 | イベント |
---|---|
onOpen(e) | ファイル(スプレッドシート)を開いたとき |
onEdit(e) | スプレッドシートにて、セルの値を変更したとき |
doGet(e) | HTMLServiceのURLに対し、http/GETを行ったとき |
doPost(e) | HTMLServiceのURLに対し、http/Postを行ったとき |
上2つは主にスプレッドシートで、下2つは主にHTMLServiceで用いられます。
ここでは、onOpen()
と、onEdit()
を実際に説明してみます。
まず、スプレッドシートを以下のように、それに紐づくスクリプトを以下のように準備します。
・スプレッドシート
・スクリプト
function onEdit(e) {
if (e.value < 60) {
e.range.setBackground("red");
}
}
その後、スプレッドシートを開き、セルに60以下の数字を入れると、編集したセルの背景色が赤色になるはずです。
onEdit関数のeには、編集に関する様々な情報が入っています。
Googleの公式ページにどのような情報が手に入るかが記載されているので、まとめてみました。
メソッド | 手に入る情報 |
---|---|
authMode | ユーザーに対する権限? |
user | ログインしているユーザーのID |
range | 編集されたセルの位置 |
value | 編集後のセルの値 |
oldvalue | 編集前のセルの値 |
実際には、rangeやvalueをよく使うことになります。