プログラミング

【GAS】onEditでは権限が足りずに関数を実行できない

あきぞらです。

GAS(Google App Script)でonEditで処理を書いていたのですが、

権限が足りず、処理を実行することができませんでした。

(onEditというのは、スプレッドが何かしら更新されたときに走る関数のことです。)

処理を実行しようとすると、こんなエラーが。

その操作を行うには「(https://www.googleapis.com/auth/gmail.send || https://www.googleapis.com/auth/gmail.compose || https://www.googleapis.com/auth/gmail.modify || https://mail.google.com/ || https://www.googleapis.com/auth/gmail.addons.current.action.compose)」
権限が必要です。at onEdit(コード:86:27)

そこで、下記の記事にかいたとおり、マニフェストファイルを修正したのですが、

【GAS】「Exception: スクリプトにはその操作を行う権限がありません。」エラーの対処方法!

あきぞらです。 GAS(Google App Script)を使っていて、こんなエラーに出くわしました。 Exception: スクリプトにはその操作を行う権限がありません。 解決するのに少し手こずっ ...

続きを見る

結果はかわらず。

onEditは最低の権限しかない

よくよく調べてみると、onEditの関数は一番低い権限が設定されているため、

メール送信などの処理は実行できないようでした。

なので、マニフェストファイルをいくら修正してもonEditでは実行できない処理があったのです。

解決方法

実行する関数を、onEditから別の関数名に変更します。

そして、トリガーを以下のように設定します。

これでonEditと同じように処理が実行され、マニフェストファイルに記載した権限で実行ができるようになります!

-プログラミング

Copyright© あきぞらてっく , 2020 All Rights Reserved Powered by AFFINGER5.