業務の自動化が図れるGoogle Apps Script

ビジネスに役立つ多彩なサービス群を提供してくれるGoogle Apps。追加費用を支払うことなく、続々と登場する新機能を利用できるのもその魅力といえる。企業の規模や業務内容に応じて柔軟に社内システムを構築でき、まさに"かゆいところに手が届く"という表現がぴったりなGoogle Appsだが、それでも企業によっては「もう少しカスタマイズしたい」と感じることがあるかもしれない。そんな時に活躍するのが「Google Apps Script」だ。

Google Apps Scriptとは、JavaScriptを用いてGoogle Appsの各種サービスを制御するスクリプトのこと。ビジネス関係では、従来の"Excelにおけるマクロのようなもの"と認識してもらうのが分かりやすいだろう。もちろん、Google Apps ScriptではGoogleドキュメントのスプレッドシート(サービス名としてはGoogleドライブに統合)をはじめ、GmailやGoogleサイトなどさまざまなサービスに対応している。また、クライアントサイドではなくサーバサイドで実行されるため、クライアント端末にかかる負荷が少ないのも特徴のひとつ。タブレットやモバイルPCといった比較的低スペックな端末でも動作が可能となっている。

Google Apps Scriptを使うと、たとえばスプレッドシートへ入力した顧客データを使ったメールの一斉送信、カレンダーへの入力内容をメール送信して日報の代わりに使う、フォームをGoogleサイトに埋め込むなど、実に多彩な処理が行える。こうした処理によって業務の自動化を図ることで、人的ミスの低減や業務効率の向上につながるというわけだ。

このGoogle Apps Script、名前に「Google Apps」と冠してはいるものの、実はGoogle Apps以外のGoogleサービスでも使用できる。これはリリース当初にGoogle Apps専用の機能として提供されていた名残で、GmailやGoogleドライブのユーザーでも利用することが可能だ。本記事を見て「Google Appsは使ってないけど」という方も、ぜひGoogleドライブなどで試してみてほしい。

定番の「Hello World」にチャレンジ

Googleドライブを開き、「作成」から「スプレッドシート」をクリック

メニューバーの「ツール」から、「スクリプト ギャラリー」「スクリプト マネージャ」「スクリプト エディタ」が利用できる

まずは、実際に使ってみた方が分かりやすいと思うので、定番の入門プログラム「Hello World」を使って、実際の作成方法や動作を見ていきたいと思う。

なお、Google Apps ScriptはGoogleドライブの「作成」→「もっと見る」→「スクリプト」から直接作成することもできるが、今回はスプレッドシートとの関連性や動作を分かりやすくするため、Googleドライブのスプレッドシート経由でGoogle Apps Scriptを使用している。

まず、Googleドライブでスプレッドシートを作成する。今回の「Hello World」では数値の引用などを行わないため、セルはすべて空白のままで構わない。メニューバーの「ツール」をクリックすると、Google Apps Scriptに関連する「スクリプト ギャラリー」「スクリプト マネージャ」「スクリプト エディタ」という3つの項目が用意されている。各項目の内容は下記の通りだ。

スクリプト ギャラリー

スクリプト マネージャ

スクリプト エディタ

  • スクリプト ギャラリー
    世界中のユーザーによって作成されたスクリプトを集めて公開しているギャラリー。ワンクリックで簡単に自社環境へのインストールが行えるほか、インストール後にソースを確認してから実行できるので、JavaScriptに関する知識があればセキュリティ面でも安心といえる
     

  • スクリプト マネージャ
    自身で作成もしくはインストールしたスクリプトの編集や実行などが行える管理ツール
     

  • スクリプト エディタ
    実際にスクリプトを作成するエディタ
     

今回の「Hello World」を試すため、まずはスクリプトエディタを起動する。スクリプトエディタでは、下部の「次回から表示しない」にチェックを入れない限り、起動時にチュートリアルメニューが表示される。ただし残念なことに、チュートリアルは2012年10月末時点で英語のみ。今後はこちらの日本語化も期待したいところだ。ちなみにメニューバーの「ヘルプ」→「開始画面」をクリックしても同じ画面が表示できる。

開始画面の左上にある「空のプロジェクト」をクリックすると、下記のような構文が記載されたエディタ画面になる。

function myFunction() {

}

ここで、1行目と3行目の間の行に、ブラウザ上でメッセージボックスをポップアップ表示させる命令を一文を追加してみよう。

function myFunction() {
  Browser.msgBox("Hello World!")
}

「Browser.msgBox」は、ブラウザ上でメッセージボックスをポップアップ表示させる命令だ。表示するコメントはなんでも構わないが、今回はシンプルに「Hello World!」としている。追加が完了したら、メニューバーの「ファイル」→「保存」で任意の名前を付けて保存。上部にある実行ボタンをクリックしてから先ほどのスプレッドシートに戻ると、画面上に「Hello World!」のメッセージボックスが表示されている。

メニューバーの「ファイル」→「保存」で、スクリプトに任意の名前を付けて保存する

上部にある実行ボタンをクリックする

先ほどのスプレッドシートに戻ると、画面上に「Hello World!」の文字が表示されている

作成したスクリプトはスクリプト マネージャに一覧表示され、ここから実行や編集が可能

なお、今回はスプレッドシートとの関連性を分かりやすくするため、GoogleドライブのスプレッドシートからGoogle Apps Scriptを使用した。しかし、Googleドライブの「作成」→「もっと見る」→「スクリプト」から直接スクリプトを作成することもできる。また、作成したスクリプトはスクリプト マネージャに一覧表示され、ここから実行や編集することも可能だ。

このようにGoogle Apps Scriptを使うと、各種Googleサービスで通常利用する機能以外の制御まで行える。「Hello World」はあくまでも簡単な例だが、これを応用すれば前述のような業務の自動化も実現できるのである。

「JavaScriptに関する知識がないから使えない」という方も安心していただきたい。本連載はプログラミング講座ではないので、次回以降ではスクリプト ギャラリーから業務に役立つスクリプトをインストールし、その使い方やカスタマイズ方法などを紹介していく。