【Google App Script】「Simple Trigger」から権限変更をするとでエラーが出る問題

前回、Google スプレッドシートから Googleドライブの中のファイルの権限を変更する方法を学びました。

しかし、ここで注意がある。

スプレッドシートのスクリプトエディタで直接実行すると、特に問題なかったが、

onOpen や onEdit などの 「Simple Trigger」 から は他のファイルの権限の変更ができなかった。

以下のようなエラーが出た。

Exception: DriveApp.getFileById を呼び出す権限がありません。必要な権限: (https://www.googleapis.com/auth/drive.readonly || https://www.googleapis.com/auth/drive)

Installable Trigger」 を事前に登録すればできることがわかった。

onOpenTrigger や onEditTrigger など、独自の関数を作って登録してあげるとよい。