[GAS]ライブラリを利用するには: 逆引きGoogle Apps Script

2012 年 7 月 20 日 金曜日

ライブラリを利用することにより、あるGoogle Apps Scriptプロジェクトで作成した関数や変数を、他のプロジェクトから利用できるようになる。このページでは、作成したライブラリを利用する方法を紹介している。

関連:ライブラリを作成するには

あらかじめライブラリにバージョンを1つ以上作成しておく必要がある。ライブラリの作成についてはライブラリを作成するには参照。

1.ライブラリのプロジェクトキーを取得する。ライブラリをエディタで開き、「ファイル」»「プロジェクトのプロパティ」をクリック。

Project Keyをコピーしておく。

2.ライブラリを参照する側のスクリプトを開き、「リソース」»「ライブラリを管理」をクリック。

3.Find a Libraryに、(1)でコピーしておいたProject Keyを貼り付け、「選択」ボタンをクリックする。

4.ライブラリがリストに表示される。

ライブラリへの参照権限が無い場合は、

「スクリプトで使用されるライブラリ ***** へのアクセス権がないか、ライブラリが削除されました」

というエラーメッセージが表示される。この場合、ライブラリを追加しようとしたユーザーに参照権限が無い可能性があるので、ライブラリ側の共有設定を行う必要がある。

5.バージョンを選択する。バージョンは、ライブラリ側エディタの「ファイル」»「バージョンを管理」で作成したバージョンを選択することができる。

6.Identifierを入力する。ライブラリを利用する際の名称はここで設定する。たとえば、Identifierにlibraryと入力した場合、ライブラリに定義したメソッドhelloを呼び出すには、library.hello()と記述する。デフォルトはライブラリのプロジェクト名がセットされている。日本語を入力するとエラーになるので注意。

7.Development ModeをONとOFFいずれかを選択する。

ONとOFFの違いは以下の通り。

ON OFF
ライブラリに
加えた変更
新しいバージョンとして保存しなくても、変更が反映される。 ライブラリ側で新しいバージョンとして保存し、呼び出し元で最新バージョンを選択しなければ変更が反映されない。
単語補完の対象 選択しているバージョンに存在する関数のみ。ただし補完されなくても、最新のソースコードに存在する関数であれば呼び出し可能。 選択しているバージョンに存在する関数のみ。

8.保存ボタンクリック

9.ライブラリの関数を呼び出してみる。以下のスクリプトはIdentifierを「library」にした場合。

▼ライブラリ

/**
 * メッセージダイアログ用のUiを作成する。
 * 
 * @param String message
 * @return UiInstance 作成したUiインスタンス
 */
function createMessageDialog(message){
  var app = UiApp.createApplication();  
  app.add(app.createLabel(message));
  return app;
}

▼ライブラリ呼び出し元スクリプト

function onOpen() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  ss.show(library.createMessageDialog('これはテスト'));
}

関連記事

コメントをどうぞ

トラックバック

このエントリーのトラックバックURL:

http://www.bmoo.net/archives/2012/07/314406.html/trackback