GASを利用する上で、原因がよくわからないエラーへの対処方法のメモです。
Exception: Service error: Spreadsheets
複数の原因によって発生するエラーのようです。
僕の場合はsetValues()で発生していたのですが、
・setValues()で貼り付ける値に「セル内の画像」が含まれている。
・setValues()で指定しているRangeに存在しない範囲が含まれている。
上記が原因のようでした。
Exception: Service Spreadsheets failed while accessing document with id
スプレッドシートのIDが間違っていても発生するエラーだとは思いますが、記述ミスが特に見当たらない場合は、以下をチェックするとよさそうです。
・画像を貼り付けまくるなどしてシートが重すぎる。
・そもそもファイル形式がスプレッドシートではない。XLSXとかになっている。
個人的にはシートの容量?はなかなか気づきにくいなと思いました。
Exception: We're sorry, a server error occurred. Please wait a bit and try again.
こちらも複数の要因があるようです。
・ライブラリをHEADバージョンで追加した状態で、プロジェクトのオーナー以外が関数を実行する。
・Google Cloudに紐づけているにも関わらず、Google Cloud側で必要なAPIが有効化されていない。
前者の場合、オーナーユーザーのみ実行できるのがポイントです。ライブラリのバージョンをHEAD以外にすると他のユーザーも実行できるようになります。