こんにちは。趣味グラマのNobu(@nm_aru)です。
GAS(Google Apps Script)を使って、Googleドライブにフォルダを作成し、その配下にスプレッドシートを作りたかったのですが、色々と苦労したので備忘録として残しておきたいと思います。
フォルダを作成し、配下にスプレッドシートを作成する
コードは以下の通り。
最初はSpreadsheetAppクラスのcreate()メソッドを使いましたが、これだとGoogleドライブのルートフォルダ直下に作成されてしまうため、Drive APIを使う事で解決しました。
Class SpreadsheetApp | Apps Script | Google for Developers
ちなみに、他の方法としては、ルートフォルダ直下に作成し、指定フォルダに移動させるという方法もありました。
ただ、何か無理矢理感があったので、この方法は採用していません。
参考までにコードだけ置いておきます。
Drive APIはGCPプロジェクトとの紐付けが必要
GASの開発にはclaspを使っているのですが、pushする度にスプレッドシートのApps Scriptエディタで紐付けたDrive APIが解除されてしまう現象に悩みました。
claspで「clasp apis list」と打ち込むと、GCPプロジェクトを紐付けろと出てくるので、Drive APIを有効化したGCPプロジェクトを作成し、Apps Scriptエディタの設定画面から紐付けたところ、pushしても解除されなくなりました。
まとめ
GAS及びGoogleドライブは、サーバ管理も要らず、使い方次第で色々な事が出来るので、今後も積極的に使っていきたいと思っています。
コメント