Google Apps Script(GAS)とは?
Google Apps Script(GAS)は、Googleが提供するクラウドベースのスクリプト言語です。
GASは、Googleの以下のような様々なサービスの自動化や拡張に使用されます。
- Gmail
- Googleドキュメント
- Googleスプレッドシートなど
GASはJavaScriptをベースにしており、独自のGoogleのAPIやサービスを利用するための特別な関数を提供しています。
GASは、Googleドライブ上のスクリプトエディタで編集し、Googleドライブに保存することが可能。
GASを使用すると、Googleのサービスを自分のニーズに合わせてカスタマイズできます。
- GoogleドキュメントやGoogleスプレッドシートで以下のことができる
- 文書を自動的に生成
- データを取得
GASは、非常に柔軟で使いやすく、さまざまなアプリケーションで使用されています。
外部APIなども利用できる
Google Apps ScriptはGoogleのサービスだけでなく、他のWebサービスのAPIも利用可能です。
具体的には、GASはHTTPリクエストを送信して、外部APIにアクセスし、レスポンスを受け取ります。
GASはJavaScriptをベースにしており、JavaScriptのライブラリを使用可能。
例えば、以下のようなライブラリを使うことができ、より高度なWebアプリケーションを作成することができます。
- jQuery
- Underscore.js
また、Google Cloud Platformとの統合により、より大規模なWebアプリケーションの作成も可能です。
- Google Cloud Platformとの統合も可能
- Google Cloud Storage を使用可能
- Google Cloud Datastore を使用可能
つまり、GASはGoogleのサービスだけでなく、外部APIやライブラリ、Google Cloud Platformとの統合も可能であり、多様なWebアプリケーションを作成できます。
GAS初心者でも試せるコードを紹介
以下に、Google Apps Scriptを簡単に試せるコードサンプルをいくつか紹介します。
Googleドキュメントの内容をログに出力するコード
function logDocContents() {
var doc = DocumentApp.getActiveDocument();
var body = doc.getBody();
Logger.log(body.getText());
}
このコードを実行すると、Googleドキュメントの内容がログに出力されます。このサンプルでは、getActiveDocument()で現在開いているドキュメントを取得し、getBody()でドキュメントの本文を取得しています。
Googleスプレッドシートにデータを書き込むコード
function writeData() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Sheet1");
sheet.getRange("A1").setValue("Hello, world!");
}
このコードを実行すると、GoogleスプレッドシートのSheet1のA1セルに「Hello, world!」という文字列が書き込まれます。
このサンプルでは、getActiveSpreadsheet()で現在開いているスプレッドシートを取得し、getSheetByName()で指定した名前のシートを取得しています。
Gmailの受信トレイにあるメールをログに出力するコード
function logGmailInbox() {
var threads = GmailApp.getInboxThreads();
for (var i = 0; i < threads.length; i++) {
var messages = threads[i].getMessages();
for (var j = 0; j < messages.length; j++) {
Logger.log(messages[j].getSubject());
}
}
}
のコードを実行すると、Gmailの受信トレイにあるメールの件名がログに出力されます。
このサンプルでは、getInboxThreads()で受信トレイのスレッドを取得し、スレッド内のメールを取得しています。
これらのコードサンプルは、Google Apps Scriptの基本的な機能を紹介しています。
初心者の方は、これらのコードをベースにして、さまざまなWebアプリケーションを作成してみることをおすすめします。
GAS中級者、上級者レベルでできること
Google Apps Scriptは非常に柔軟で、多くのことが可能です。
以下に、GASを中級者、上級者レベルになった場合に行えることの例を挙げてみます。
- Webアプリケーションの作成
- Google Apps ScriptはWebアプリケーションの作成にも使用できる
- 外部APIやGoogleのサービスを使用して、より高度なWebアプリケーションを作成可能
- 例:JavaScriptライブラリやフレームワークを使用
- Webアプリケーションを作成
- GoogleドキュメントやGoogleスプレッドシートからデータを取得
- 外部サービスに送信
- Webアプリケーションを作成
- Slackボットの作成
GASを使用してSlackボットを作成可能 - Slack APIを使用
- 自分のニーズに合わせたSlackボットを作成
- 例:SlackボットがGoogleドキュメントやGoogleスプレッドシートからデータを取得し、Slackチャンネルに送信可能
- 自分のニーズに合わせたSlackボットを作成
- Google Appsの自動化
- Google AppsのAPIを使用
- 例:
- Googleカレンダーから情報を取得
- Googleドキュメントに自動的に書き込む
- Googleフォームからの回答
- Googleスプレッドシートに自動的に書き込む
- Googleカレンダーから情報を取得
- データベースの作成
- Google Cloud Platformのサービスを使用してデータベースを作成可能
- Google Cloud Datastore
- Google Cloud SQLなどを使用
- Google Cloud Platformのサービスを使用してデータベースを作成可能
これらは、Google Apps Scriptを中級者、上級者レベルで使用する際に行えることの一例です。
Google Apps Scriptは非常に柔軟であり、多くのことが可能です。自分のニーズに合わせて、GASを活用してみることをおすすめします。
GAS初回実行時の権限の許可
GASの初回実行時には、スクリプトが使用する権限を許可する必要があります。
- 「このアプリはGoogleで確認されていません」
- 「詳細」→「安全ではないページに移動」をクリック(左図参照)
- 「Googleアカウントへのアクセスをリクエストしています」
- 「許可」をクリック(右図参照)