プログラム自動実行で仕事を楽に! APIでSlackなどと連携できる「Google Apps Script」とは働く価値を上げる“VBA/GAS術”(2)(1/3 ページ)

日頃発生する“面倒くさい業務”。簡単なプログラミングで効率化できる可能性がある。本稿では、Googleが提供する数々のアプリケーションを操作できる「Google Apps Script」を紹介する。※ショートカットキーの解説あり

» 2017年08月08日 05時00分 公開
[高橋宣成プランノーツ]

Excel VBAとGAS

 業務で発生するちょっとした面倒くさい業務。特定の操作を繰り返すだけなので、今のままでもいいけど、楽になったらいいなと思うこともあるのではないでしょうか。例えば業務を自動化すると時間が空くため、他の業務に時間を充てたり、残業時間を減らしたりできるかもしれません。

 本連載「働く価値を上げる“VBA/GAS術”」では、業務を効率化する手段として「Microsoft Excel」(マイクロソフトエクセル)で使える「VBA」(Visual Basic for Applications)と「G Suite」の「GAS」(Google Apps Script)の使い方を説明し、よくある業務課題の解決策を紹介します。第2回はGASの説明とセットアップ方法を紹介します。

GASとは何か

 Google Apps Scriptは、Googleが提供する数々のアプリケーション(以下、Google Apps)を操作できるプログラミング言語です。略して「GAS」(呼び方:ガス)または「Apps Script」ともいわれます。GASを使いこなし、さまざまなアプリケーションの動作を自動化したり、連携したりすることで、日々の業務を効率化できるようになります。

 本稿では、Google Appsの中でも特に業務で使用されることが多いGoogleスプレッドシートを例に、GASとその使い方についてお伝えします。

GASを使うとどんなことができるのか

 GASは、多くのアプリケーションを操作できます。デフォルトの状態では以下の11種類のGoogle Appsが操作対象です。

  • Googleスプレッドシート
  • Googleドキュメント
  • Googleサイト
  • Googleフォーム
  • Googleドライブ
  • Gmail
  • Googleカレンダー
  • Google連絡先
  • Googleグループ
  • Googleマップ
  • Google翻訳

 さらに「拡張サービス」と呼ばれる機能を有効にすることで、データウェアハウス「BigQuery」やアクセス解析ツール「Googleアナリティクス」などのアプリケーションも操作できるようになります。全て合わせると、操作できるアプリケーション数は30を超えます。

 また個々のアプリケーションの動作を自動化することはもちろんですが、2つ以上のアプリケーションを連動させることも可能です。例えば、以下に挙げるようなさまざまなアイデアを実現できます。

  • Googleスプレッドシートのデータリストから帳票を作成し、PDF形式でGoogleドライブに保存
  • Googleドキュメントの内容を翻訳して、Gmailで送信
  • Gmailに届いた予約メールを抽出して予定をGoogleカレンダーに登録
  • Googleフォームに回答した人にサンクスメールを自動返信
  • Googleスプレッドシートの住所一覧をGoogleマップにプロット

JavaScriptがベース

 GASは、完全にオリジナルなプログラミング言語ではなく、人気があるプログラミング言語の1つである「JavaScript」をベースに作られています。そのため、JavaScriptを習得済みであれば、GASの習得は容易でしょう。逆にGASを習得することで、JavaScriptを学ぶことができる点は、GASのプログラミングを学ぶ大きなメリットの1つです。

 ただし注意すべき点があります。他の環境で使用しているJavaScriptのコードの中には、GASで使用できない機能が一部あります。その点を認識の上、学習を進める必要があります。

クラウド上で動作する

 GASの最大の特徴は、クラウドで動作するということです。Excel VBAは、コーディングも、プログラムの実行も、ユーザーが操作するPC内で行われます。一方でGASは、Webブラウザを介してクラウド上でプログラムを編集し、実行もクラウドサーバ内で行われます。

 これによるメリットは幾つかありますが、まず1つ目は「Webに強い」という点が挙げられます。GASは、Google Appsとそのデータにアクセスするだけではなく、Webアプリケーションを構築したり、APIやハブサービスを通じて「Slack」「チャットワーク」「kintone」などの外部のサービスと連携したりできます。

 2つ目は「開発環境が不要」という点です。サーバ上で動くプログラムを作るとき、当然ながらサーバを準備する必要がありますが、GASは必要ありません。全てGoogleが用意しているので、私たちはWebブラウザでアクセスするだけ。すぐにGASの学習と開発を開始できます。

 3つ目のメリットとして挙げられるのは「トリガー」と呼ばれる機能です。実行するプログラムと操作対象となるアプリケーションやデータは、クラウド上にあります。「トリガー」を設定しておくことで、PCを閉じていたとしてもプログラムを特定の時間に動作させたり、他のユーザーの操作をきっかけに動作をさせたりといったことが可能になります。

       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。