GAS(Google App Script)は、Googleが開発したアプリケーションプラットフォームです。GASを使えば様々な作業、そしてGoogleスプレッドシートやドキュメントと連携した業務効率化・自動化を実現する事ができます。
GASについて詳しく説明した記事がありますので、何ができるのかはこちらを是非ご覧ください。

GASのスクリプトファイルを作成する方法は2種類あり、1つが「スタンドアロン型」そしてもう1つが「コンテナバインド型」と呼ばれる作成方法です。
それぞれどのように作成し、そしてどのように違うのか。本記事では、その違いについて解説していきます!
GASのスタンドアロン型とは
GAS(Google App Script)でいう「スタンドアロン型」とは、単体で動作するプログラムの事です。
勿論、Googleサービス全般と連携可能ですが、独立したプログラムとしても存在する事ができます。
スタンドアロン型の作り方
スタンドアロン型のスクリプトファイルの作り方は簡単で、Googleドライブの任意の場所にカーソルを持っていき、右クリックをして、「その他」>「Google App Script」を選択するだけです。
この方法で作成したGASのスクリプトファイルは、スタンドアロン型として作成されます。

スタンドアロン型のメリット・デメリット
スタンドアロン型でスクリプトファイルを作るメリット・デメリットは以下になります
Google関連サービスと連携しない事で実装コストを削減
スタンドアロン型のスクリプトファイルは、それ自体独立して実行する事ができるので、例えばGoogle他サービスと敢えて連携させない・する必要がない時に工数や実装工程を削減する事ができます。
そのため、実装コストが下がり、素早くプログラムが書けたり実行できたりする点がメリットになります。
GASを使ってJavaScriptを手軽に実行したり、Google関連サービス以外の他社のAPIを用いてプログラムを記述するといった時は、スタンドアロン型でスクリプトを作成する方が良いでしょう。
Googleドライブでファイルが表示されるため、管理しやすい
スタンドアロン型で作成したスクリプトファイルは、Googleドライブ上でファイルとして表示されるため、後から検索・管理しやすいといったメリットがあります。
コンテナバインド型で作成したスクリプトは、ファイルとして表示されないため、紐づいている指定のファイルから毎回スクリプトにアクセスする必要があります。
他のGoogleサービスと紐づかないため、秘匿性が高い
スタンドアロン型で作成したスクリプトファイルは、他のGoogleサービスと直接的に紐づいていないため、秘匿性が高くなります。
そのため、ファイルは他の人に共有したいけど、App Scriptのプログラムは見せたくない、といった時には、スタンドアロン型で作る事が非常に適しています。
スタンドアロン型は、コンテナバインドでできる事ができない
スタンドアロン型で作成したスクリプトファイルは、コンテナバインド型でできる事ができません。
具体的には、下記でも解説していますが、例えば、スプレッドシートと連携させたい時はIDや名前を指定する必要があったり、紐付けが無いためスプレッドシートからGASが実行できなかったりする点などです。
そのため、状況や目的に合わせて、スタンドアロン型を選択する事が大切です。
GASのコンテナバインド型とは
一方で、コンテナバインド型とは、特定のGoogleサービス(GmailやGoogleスプレッドシート、Googleドキュメント等)に紐づけられたスクリプトの事です。
コンテナバインド型の作り方
コンテナバインド型のスクリプトファイルの作り方は、スタンドアロン型とは違い、連携したいGoogleサービスから拡張機能として作成します。例えば、スプレッドシートの場合、そのファイルを開いた状態で「拡張機能」>「App Script」を選択してスクリプトファイルを作成します。

この方法で作られたスクリプトファイルは、コンテナバインド型として作成されます。
コンテナバインド型のメリット・デメリット
コンテナバインド型で作られたスクリプトファイルのメリット・デメリットは以下になります。
紐づくファイルを簡単に読み込む関数が用意されている
コンテナバインド型で作られたファイルでは、コンテナバインド型に許された紐づいたファイルを簡単に取得できる関数を使う事ができます。
例えば、以下のような関数になります。
SpreadsheetApp.getActive().getId() // スプレッドシートのファイルIDを取得
DocumentApp.getActiveDocument().getId() // GoogleドキュメントのファイルIDを取得
SlidesApp.getActivePresentation().getId() // GoogleスライドのファイルIDを取得
FormApp.getActiveForm().getId() // GoogleフォームのファイルIDを取得このように、紐づいたファイルIDを調べる事なく取得する事ができるため、コード実装のコストが削減できるのがメリットです。
スプレッドシートにボタンを作成しGASを実行できる
スプレッドシート内にボタンを作成し、ボタンを押下したらGASを実行できるようにする事ができます。
ボタンに実行機能を持たせられるため、スプレッドシートでできることの幅が広がります。押すことでリストをソートしたり、自動的にメールを送信するなどの業務効率化が可能です。
スタンドアロン型だと、そのような事ができません。
そのため、状況や目的に合わせて、コンテナバインド型を選択する事が大切です。
App Scriptダッシュボードでスクリプトファイルを確認できる
コンテナバインド型のスクリプトファイルを多数作成した場合、管理が非常に難しくなります。
App Scriptのダッシュボード(https://script.google.com/home)にアクセスすると、コンテナバインド型・スタンドアロン型のどちらのファイルも作成したものに関して把握する事ができます。

ファイルを沢山作ってしまった場合に備えて、覚えておきたい知識です。
まとめ
本記事では、GASの2種類の作成方法「スタンドアロン型」と「コンテナバインド型」について解説していきました。
機能的な面であればコンテナバインド型に軍配が上がりますが、管理の面でいうとスタンドアロン型が便利です。
利用目的・状況に合わせてスタンドアロン型かコンテナバインド型を選択し、より便利なGASライフを送って下さい!


コメント