Google Apps Script(スクリプト)とは?概要から使い方まで

はじめに

アイキャッチ

Google Apps Scriptはご存知でしょうか?Google Apps ScriptはGoogleが提供しているJavaScriptベースの開発環境のことで、Microsoft WordやExcelで言う「マクロ」や「VBA」のようなものです。
日頃の業務でGoogleスプレッドシートやドキュメントなどを利用している方は、理解し使えるようになると業務効率が上がるのでとても便利でしょう。
今回はそんなGoogle Apps Scriptのメリット・デメリットやできること、使い方について解説していきます。

Google Apps Scriptのメリット・デメリット

メリット

  • 無料でも利用できる
  • Googleアカウントさえあれば無料で利用できます。一部制限がありますが、簡単なWebサイトやAPIも無料で作ることができます。そのためユーザーも多く、参考にできるサイトや情報も豊富です。プログラミング初学者でも学習しやすいでしょう。

  • 環境構築の必要がない
  • 環境構築は必要ありません。Google Apps Script用のエディタを開いたら、すぐコードを書いて実行できます。

  • Googleが提供するサービスとの連携が簡単にできる
  • Gmail、Googleスプレッドシート、Googleドキュメント、Googleフォーム、Googleカレンダー、Googleドライブ、GoogleスライドなどのGoogle提供サービスと連携したプログラムが作成できます。普段の作業の効率化から、うまく連携させられれば大幅に工数を削減できる可能性もあります。

  • 外部アプリケーションとの連携ができる
  • Chatwork、Slack、Trello、Backing、RedmineやLINEとの連携が可能です。

    デメリット

  • 一部制限がある
  • 1回、1日あたりの実行時間やAPIの呼び出し回数に制限があります。例えばメールの読み込み・書き出し数やJDBCの接続について、一般的なGmailアカウント・Gsuite無料版・Gsuite有料版それぞれで異なった制限があります。

    参照:https://developers.google.com/apps-script/guides/services/quotas

  • npmモジュールに標準で対応していない
  • 普通のJava Scriptと異なり、標準機能としてnpmモジュールを利用することはできません。npmモジュールが必要な場合はnpm利用が可能なGoogle Cloud Functionsなどの利用を考えた方が良いでしょう。

    Google Apps Scriptでできること

    前述したようにGmail、Googleスプレッドシート、Googleドキュメント、Googleフォーム、Googleカレンダー、Googleドライブ、GoogleスライドなどのGoogleが提供する数多くのサービスをプログラミングで操作することができます。主にGoogleスプレッドシートで利用されるケースが多いです。
    特定の条件(例えばスプレッドシートを開いた時や特定の時間帯であるなど)を満たす時に自動で処理を実行させたり、メニューに自分で作成したプログラムを追加する事も可能なので、作業の効率化に大きく貢献するでしょう。

    GmailやGoogleカレンダーではGoogle Apps Scriptを書く場所はありませんが、スプレッドシートやドライブ側でスクリプトを書き連携することで、自動でのメール送信やカレンダーへのスケジュールの記載などの処理が可能になります。

    また、Web情報の取得や外部アプリケーションと連携してメッセージを送信する、といったことも可能です。

    Google Apps Scriptの使い方

    スプレッドシートからエディタを開く

    Googleドライブを開き、[新規]→[Googleスプレッドシート]を選択します。

    Googleドライブ

    スプレッドシートを開きます。

    スプレッドシート

    スプレッドシートの名前を変更します。

    スプレッドシート

    [ツール]→[スクリプトエディタ]を選択します。

    スクリプトエディタ

    GAS用のエディタ画面が表示されます。この画面にGoogle Apps Scriptを記述し実行します。

    スクリプトエディタ

    簡単なコードを実行する

    簡単なコードを書いてみましょう。以下のコードは「Hey!」と表示するだけのものです

    Hey!

    まず保存しましょう。[ファイル]→[保存]で保存します。

    保存

    赤枠の実行ボタンを押します。

    実行

    「Running function myFunction」とメッセージが一瞬表示され、消えたら処理は完了しています。※

    ※ 初回実行時は「承認が必要です」というダイアログが表示されて実行許可を求められます。筆者の環境では出なかったので、ダイアログが出る場合は以下URLの記事を参照して承認してください。

    Google Apps Script(GAS)入門 初回コード実行時の承認・許可方法を解説【図説】:https://auto-worker.com/blog/?p=609

    実行結果を確認する

    それでは実行結果を確認しましょう。[表示]→[ログ]を開きましょう。

    ログ

    ログウィンドウに「Hey!」と表示されていればOKです!

    ログウィンドウ

    GASメニューをスプレッドシートに追加する

    毎回スクリプトエディタに切り替えてGoogle Apps Scriptを実行するのはちょっと面倒…という時には以下のコードを記述し実行しましょう。今回はGoogleスプレッドシートなので”SpreadsheetApp”としていますが、Googleドキュメントの場合は”DocumentApp”、スライドの場合は”SlidesApp”に変更すればOKです。

    function onOpen() {
      var ui = SpreadsheetApp.getUi();
      ui.createMenu('GAS')
        .addItem('実行', 'myFunction')
        .addToUi();
    }

    実行するとGoogleスプレッドシートのヘルプメニューの右にGASメニューを追加し、そこから選択して実行できるようになります。

    gasメニュー

    おわりに

    ここまでGoogle Apps Scriptの解説、使い方や記述方法を解説してきました。

    前述の通りGoogle Apps ScriptはGoogleの各サービスをよく利用している方はもちろん、環境構築をしなくともコードを書いて実行でき、参考になる情報も多いので、とりあえずプログラミングをやってみたい!という方にも向いています。気になったらまず始めてみましょう!