この記事は GAS道場 Advent Calendar 2019 の17日目の記事です。 Google Apps Script(GAS)をこれから使おうという方向けのアドベントカレンダーになります。
今回は、ライブラリを利用して、別のGASファイルのスクリプトを利用する方法を紹介したいと思います。
はじめに
ライブラリを利用するためには、Google Cloud Platformのアカウントが必要になりますので、準備しておいてください。 GCPでテスト用のプロジェクトを用意しておくと良いかと思います。
ライブラリを作成する
まずは、ライブラリを作成しましょう。これから作るファイルが利用される側になります。
function getHelloWorld() { return 'Hello world, pnkts.'; }
今回はこのようなシンプルなスクリプトを用意しました。
そして、Hello worldという名前で作成しました。
これをライブラリとして公開したいのですが、 公開 → 実行可能APIとして導入 を選択すると、
このように、Cloud Platformのプロジェクトが必要ですって言われます。
そこで、最初に書いたGCP側のプロジェクトの出番です。 GCPのダッシュボードのプロジェクト情報のところに書いてあるプロジェクト番号をメモします。
次にGASの方に戻り、 リソース → Cloud Platformプロジェクト... を選択します。 そして、先程メモしたプロジェクト番号を入力しプロジェクトを設定します。 確認画面が出るのでそのまま確認。 バージョンの登録やらを行います。
すると、 このように、API IDが発行されます。 バージョンやスクリプトにアクセスできるユーザーを選びます。ここでは、自分のみにしています。 このAPI IDはメモしておきましょう。
ライブラリの作成は以上になります。
ライブラリを利用してみる
さて、それでは作成したライブラリを使用してみましょう。 新しくGASのファイルを開き、リソース → ライブラリ... を選択します。
下のライブラリを追加するところのフォームに先程メモしたAPP IDを入力します。 すると、先程作成したライブラリが追加されます! バージョンを先程設定しいたものにして、Identifierを指定します。Identifierは、ライブラリを利用するときのクラス名のようなものです。 このように設定すると、以下のように 先程作成したメソッドが使えるようになります!
function myFunction() { Logger.log(Helloworld.getHelloWorld()) }
もちろん、このようなプログラムを書いて実行すると、、、
このようにライブラリのスクリプトが実行されるようになります。
さいごに
このようにライブラリとして、いろんなスクリプトを登録しておけば、後で別のGASを作るときに使い回せます。 便利なスクリプトは何度も書かず再利用しましょう!