Google Apps Script入門〜スタンドアロン型とコンテナバインド型の比較と解説

Google Apps Script(GAS)にはスプレッドシートやフォームに紐付くコンテナバインド型と、独立したスタンドアロン型の2種類があります。

コンテナバインド型とスタンドアロン型のGASについて、それぞれの特徴とメリット・デメリットを比較し、紹介したいと思います。

 

Google Apps Scriptに2種類の方式

Google Apps Script(GAS)には大きく分けて2種類の方式があります。

  • コンテナバインドスクリプト
  • スタンドアロンスクリプト

大半は同じ内容ですが、スクリプトエディタの開き方や、コードで使用できるコマンドに違いがあります。

GASのコンテナバインドスクリプトとは

コンテナバインド型は、スプレッドシートやドキュメント、フォームなどのGoogleのサービスに紐づく、Google Apps Scriptのスクリプトです。

Google Apps Scriptのスクリプトエディタのスクリーンショット

Google Apps Scriptを始める場合は、スプレッドシートをベースにすることが多いです。

コンテナバインド型のGASスクリプトエディタの開き方

コンテナバインド型のGASでスクリプトエディタを開く場合は、紐づくサービスのメニューからスクリプトエディタを開きます。

スプレッドシートのメニューから「ツール」→「スクリプトエディタ」をクリック

スプレッドシートの場合は、メニューバー「ツール」にある「スクリプトエディタ」からGASのエディタ画面を開くことができます。

コンテナバインド型のみ使えるGASコマンドも

コンテナバインド型のGoogle Apps Scriptでは、スタンドアロン型では使用できないコマンドを使用することができます。

上記のコマンドは、後述するスタンドアロン型GASで使用すると、実行時にエラーします。

GASのスタンドアロンスクリプトとは

スタンドアロンスクリプトのGoogle Apps Scriptは、特定のスプレッドシートなどのファイルに紐づくことはありません。

もちろんスクリプト内でスプレッドシートやフォームなどの呼び出しが可能です。呼び出す際にはきちんとIDやURLで一意に指定する必要があります。

スタンドアロン型のGASスクリプトエディタの開き方

Google Apps Scriptのスタンドアロンスクリプトは、Googleドライブから新規ファイルとして開くことができます。

Google Apps ScriptのスタンドアロンスクリプトはGoogleドライブから開く

コンテナバインド型のGASファイルは、Googleドライブ上には表示されませんが、スタンドアロン型のGASファイルはGoogleドライブに表示されます。

 

コンテナバインドとスタンドアロンのメリット・デメリット比較

コンテナバインドスクリプトとスタンドアロンスクリプトはそれぞれにメリットデメリットがあります。

コンテナバインドのメリット・デメリット

コンテナバインドスクリプトのメリットは、以下の3点があげられます。

  1. Googleの各種サービスのメニューから手軽に始められる
  2. 紐づくGoogleサービスをID指定不要で参照できるコマンドが用意
  3. スプレッドシートからGASのコードを実行できる

一方、コンテナバインドスクリプトはGoogleスプレッドシートなどのファイルにぶら下がる形式のため、Googleドライブ上では表示されないというメリットがあります。

扱っているGASのスクリプトが少ないうちは管理できますが、数が増えるにつれて、管理コストが増えるのがデメリットです。

スタンドアロンのメリット・デメリット

スタンドアロンスクリプトのメリットは、Googleドライブで表示されるため、管理しやすい点があげられます。

また、スプレッドシートなどに紐付かないため、スプレッドシート利用者に対し、スクリプトを秘匿することが可能です。

その一方、コンテナバインドでできることがスタンドアロンではできない点がデメリットです。

  1. スプレッドシートを開く際は、IDや名前を指定する必要がある
  2. 紐付けがないため、スプレッドシートからGASが実行できない

コンテナバインドとスタンドアロンのGASの使い分け

コンテナバインドスクリプトとスタンドアロンスクリプトの使い分け方法ですが、最初のうちはコンテナバインド型のGoogle Apps Script利用で問題ありません

コンテナバインドスクリプトだと、紐づくスプレッドシートを簡単に読み込むコマンドがあります。

また、スプレッドシートに挿入した画像にスクリプトを割り当て、クリックでGASを実行できます。

さらにスプレッドシートを開いた際にもスケジュール実行でGASの処理を行うといったことも可能です。

上記のような利用ケースがない場合で、かつGoogle Apps Scriptの利用数が増えた場合は、スタンドアロンスクリプトの方が管理しやすくなります。

また、スタンドアロンスクリプトの場合、スプレッドシートに紐付かないため、スクリプトを秘匿できます。

コードの記述内容を秘匿しておきたい場合は、スタンドアロンスクリプトがオススメです。

まとめ・終わりに

今回、コンテナバインドスクリプトとスタンドアロンスクリプトの2種類のGoogle Apps Scriptを紹介しました。

機能的な面で言えば、コンテナバインド型の方がすべての機能がありますが、管理面でスタンドアロン型の方が便利なケースがあります。

Google Apps Scriptの利用ケースを考慮し、コンテナバインド型でしかできない場合はコンテナバインド型を選択、そうでなければ、スタンドアロン型を選択するのがオススメです。