概要
スプレッドシートを元に、簡単にアプリを作れるGoogleAppSheet。微妙なところで躓いてしまったのが表題。
スプレッドシートのセル編集をトリガーにスクリプトを動作させるonEdit(e)を使っていたのだけれど、AppSheetで作成したアプリからのセル編集だとスクリプトが動作しない???
仕様なのかと諦めモードになっていたら、海外のQ&Aサイトに「onEditじゃなくてonChangeなら出来たって人がいるよ」との記述があったので試してみた。
そういう事じゃなかった
軽率な素人として、まずは function onEdit(e) {
を function onChange(e) {
に変更・・・挙動に一切の変化なし。そういう事ではない模様。
こういう事だった
どうやら関数名をonChangeにするだけじゃなくて、onChange関数をトリガー設定する必要があったみたい。
具体的には、時計アイコンでトリガーの設定を開いてトリガーを追加。トリガーの設定は次の通り。
実行する関数で「onChange」を選択、イベントの種類は「変更時」。
見事、AppSheetからのセル編集をトリガーにスクリプトが動作しましたとさ。
これってトリガーで関数を指定してるんだから、もしかして関数名はonChangeでなくて良かったのかも?