Google Apps Scriptとは?初心者向け超入門ガイド

Automation

「Google Apps Script(GAS)」という言葉を聞いたことはあるけれど、実際にどう使えばいいのか分からない…そんな方も多いのではないでしょうか?

実は、GASを活用すれば、スプレッドシートの自動更新やGmailの一括送信、SlackやNotionとの連携まで、日々の業務を劇的に効率化できます。

本記事では、初心者でもすぐに試せるGASの基本から、すぐに役立つ活用事例までわかりやすく解説します!

はじめに|Google Apps Scriptとは?

「Google Apps Script(GAS)」という名前は聞いたことがあるものの、具体的にどんなものなのか分からない…そんな方も多いのではないでしょうか?

Google Apps Scriptは、Googleの各種サービス(スプレッドシート、Gmail、カレンダーなど)を簡単に連携させ、業務を自動化できる強力なツールです。
しかも、プログラミング経験がなくても始めやすく、無料で利用可能です。本記事では、まずGoogle Apps Scriptの基本をわかりやすく解説します。

Google Apps Script(GAS)とは?

出所:https://developers.google.com/apps-script

Google Apps Script(GAS)は、Googleが提供するクラウドベースのスクリプト開発環境です。Google Workspaceの各アプリ(スプレッドシート、Gmail、カレンダーなど)と簡単に連携し、業務を自動化できます。

これは、Googleのサービス専用のプログラミング環境として設計されており、企業の業務効率化に特に適しています。
例えば、スプレッドシートのデータを元にチャットの通知を送ったり、Gmailの定型文を自動送信したりすることが可能です。

他のプログラミング言語と比べて学習コストが低いJavaScriptをベースにしているため、初心者でも取り組みやすいのが特徴です。

Google Apps Scriptで何ができるのか?

Google Apps Scriptを使えば、Googleの各種サービスを組み合わせて業務効率化が可能です。例えば、以下のようなことが簡単に実現できます。

  • Gmailの自動送信 → 指定した時間に自動でメールを送信
  • スプレッドシートの自動更新 → データを定期的に取得し、表を更新
  • Googleカレンダーの予定登録 → フォーム入力をカレンダーに反映
  • Slack通知の自動化 → GogleFormsで問合せを受け付けたらSlackに通知

これらの自動化を手作業で行うと時間がかかりますが、Google Apps Scriptを活用すれば数秒で処理が完了し、業務効率が大幅に向上します。

Google Apps Scriptが注目されている理由

Google Apps Scriptは、近年「ノーコード・ローコードツール」の一環として注目されています。特に、次の3つの理由が大きなポイントです。

  1. 無料で利用できる
    • Google Workspaceを使用している企業や個人であれば、追加費用なしで利用可能です。特別なソフトウェアのインストールも不要なため、誰でもすぐに始められます。
  2. Googleサービスとの親和性が高い
    • 企業でよく利用されるスプレッドシート、Gmail、カレンダー、Googleフォームなどと簡単に連携でき、業務プロセスの自動化を手軽に実現できます。
  3. プログラミング初心者でも扱いやすい
    • JavaScriptベースのため、初心者でも比較的学びやすく、簡単なコードを書くことで業務を効率化できます。
    • Googleが公式ドキュメントやサンプルコードを提供している点や、WEB上に多くの情報が公開されている点も安心材料です。

Google Apps Scriptはなぜ簡単?|初心者でも始めやすい理由

「プログラミング」と聞くと、難しそうでハードルが高いと感じる方も多いでしょう。
しかし、Google Apps Script(GAS)は、初心者でも手軽に始められるよう設計されています。
なぜGASは他のプログラミング言語と比べて学習コストが低く、簡単に扱えるのか?その理由を解説します。

Google Workspaceがあれば無料で使える

Google Apps Scriptは、Google Workspace(旧G Suite)を利用しているユーザーであれば、特別な設定なしに無料で使用できます。

一般的なプログラミング言語を使う場合、開発環境を構築する必要があります。
しかし、GASはブラウザ上で直接コードを書いて実行できるため、環境構築の手間が一切かかりません。

Google Workspaceを標準で導入している場合、、新たなツールを導入せずに業務の自動化が可能です。これにより、導入のハードルが大幅に下がります。

環境構築不要!ブラウザだけでOK

通常、プログラミングを始める際には、開発ツールのインストールやパソコンの設定変更などが必要です。
しかし、Google Apps Scriptはブラウザさえあればすぐに使えるため、面倒な環境構築が不要です。

Googleドライブ内にスクリプトファイルを作成し、コードを書いて実行するだけでプログラムが動きます。これにより、初心者でもスムーズに学習を進めることができます。

例えば、PythonやJavaなどのプログラミング言語を学ぶ場合、エディタの設定やライブラリのインストールなど、初期設定に時間がかかることが多いですが、GASはその手間をすべて省略できます。
会社から貸与されているPCでは、ソフトウェアのインストールが制限されている場合が多く、プログラムの実行環境を構築しようと思うと、多数の申請が必要となるため、そのような手間が発生しないのは非常に重要です。

JavaScriptベースのため、WEB上の情報が豊富

Google Apps Scriptは、Web開発で広く使われているJavaScriptをベースにしているため、分かりやすく学習が容易です。
さらには、WEB上に情報が豊富にあり、困ったときに調べることが容易です。

5分でできる!Google Apps Scriptの基本的な使い方

Google Apps Script(GAS)を使うと、Googleスプレッドシートの操作を自動化することができます。しかし、初めて使う人にとっては「どこから始めればいいの?」という疑問があるかもしれません。そこで今回は、Googleスプレッドシートから直接GASを起動し、セルに文字を入力する簡単なスクリプトを作成してみましょう。たった5分で試せるので、ぜひ実践してみてください!

Googleスプレッドシートからスクリプトエディタを開く方法

Google Apps Scriptを使うには、Googleスプレッドシートのスクリプトエディタを開く必要があります。以下の手順でスクリプトエディタを起動しましょう。

  1. Googleスプレッドシートを開く
  2. スクリプトエディタを開く
    • スプレッドシート上部のメニューから 「拡張機能」→「Apps Script」 をクリックします。
  3. スクリプトエディタの確認
    • 新しいタブで「Google Apps Scriptエディタ」が開きます。
    • ここにコードを記述し、スプレッドシートを操作するスクリプトを作成します。

最初の一歩!A1セルに文字列を入力するスクリプト

それでは、GoogleスプレッドシートのA1セルに「Hello, GAS!」という文字を入力するスクリプトを作成してみましょう。

function writeToA1() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  sheet.getRange("A1").setValue("Hello, GAS!");
}

これをスクリプトの入力欄にデフォルトで入力されているコードを削除し、以下のように貼り付けます。

入力が出来たら、保存ボタンをクリックしてプロジェクトを保存し、実行ボタンを押します。

初回の実行時はGoogleアカウントや各種機能へのアクセスについての承認を求められますので、承認します。
そうすると、元のスプレッドシートのA1セルにメッセージが入力されている状態となります。

スクリプトをトリガーで自動実行する方法

Google Apps Scriptの「トリガー」機能を使うと、スクリプトを自動的に実行することもできます。

例えば、スプレッドシートを開いたときにA1セルに「Hello, GAS!」を入力することも可能です。
トリガーは様々な条件を設定できるため、幅広い用途に利用されています。

  • 毎日同じ時間にチャットに通知を送る
  • スプレッドシートが更新されたら自動的にメールで通知する
  • スプレッドシートが開かれたら、開いた日時を記録する
  • フォームに回答が追加されたら通知を送る

例えば、私は以下のようなフローをトリガー機能により実現していました。
「Google Formsで問合せを受け付けて、問合せがあったらチャットで通知する」
「毎日決まった時間ににInstagramAPIから自社のInstagramアカウントのフォロワー数を取得する」
「成約したお客様情報をスプレッドシートに記載し、スプレッドシートに記載されたら新規のお客様を担当する部署に通知する」

これだけ知ればOK!Google Apps Scriptの便利機能4選

Google Apps Script(GAS)を使うと、Googleスプレッドシートだけでなく、GmailやGoogleカレンダー、Google Chatなど、さまざまなGoogleサービスを連携させて業務を効率化できます。
そこで今回は、GASの便利な機能の中から特に役立つ4つの機能を厳選してご紹介します。

Gmailの自動送信(定型メールの自動化)

日々の業務で「決まった内容のメールを毎回手作業で送信している」「送信漏れを防ぎたい」と感じたことはありませんか?
GASを使えば、スプレッドシートにリスト化したメールアドレスへ定型メールを自動送信できます。

例えば、スプレッドシートのA1セルに入力されたメールアドレスへ、定期的に通知メールを送る場合、以下のスクリプトを使用します。

function sendEmails() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var recipient = sheet.getRange("A1").getValue();
  var subject = "自動送信メール";
  var body = "このメールはGoogle Apps Scriptを使って送信されました。";

  if (recipient) {
    GmailApp.sendEmail(recipient, subject, body);
  }
}

このスクリプトは、スプレッドシートのA1セルに記載されたメールアドレス宛に、指定した件名と本文のメールを送信するものです。

このスクリプトを実行すると、実行した人のメールアドレスから、A1セルに入力したメールアドレス宛に以下のようなメールが送られます。


トリガー機能と組み合わせることで、特定の時間に自動送信することも可能になります。

タイトルや本文も一部を可変にするなどが可能なため、送信相手の名前を入れることなども可能です。

Googleカレンダーの予定を自動登録

会議やイベントの予定をGoogleカレンダーに手入力するのは面倒ではありませんか?
GASを活用すれば、指定した日程に自動的にカレンダーイベントを登録することが可能です。
例えば、以下のスクリプトを実行すると、2025年2月20日の10時から1時間の「Google Apps Scriptの勉強会」というイベントが作成されます。


function addCalendarEvent() {
  var calendar = CalendarApp.getDefaultCalendar();
  var eventTitle = "Google Apps Scriptの勉強会";
  var startTime = new Date(2025, 1, 20, 10, 0);
  var endTime = new Date(2025, 1, 20, 11, 0);

  calendar.createEvent(eventTitle, startTime, endTime);
}

このスクリプトをスプレッドシートと連携すれば、シートに入力された日付情報をもとに、カレンダーへ自動的に予定を一括で登録することもできます。

Google Chatに自動でメッセージを送信

重要な通知をGoogle Chatでチームに共有する作業を、手動で行っていませんか?GASを使えば、スプレッドシートのデータ更新や特定のイベント発生時に、Google Chatへ自動で通知を送ることができます。
以下のスクリプトは、指定のGoogle Chatルームへ「Google Apps Scriptからの自動通知です!」というメッセージを送信します。
事前にスペースの[スペースの設定>アプリと統合>Webhook]からWebhookURLを生成し、スクリプト中のYOUR_WEBHOOK_URLの箇所をWebhookURLに書き換える必要があります。

function sendGoogleChatMessage() {
  var webhookUrl = "YOUR_WEBHOOK_URL"; 
  var payload = JSON.stringify({ text: "Google Apps Scriptからの自動通知です!" });

  var options = {
    method: "post",
    contentType: "application/json",
    payload: payload
  };

  UrlFetchApp.fetch(webhookUrl, options);
}

このスクリプトを実行すると以下のようなチャットが送信されます。

このスクリプトを活用すれば、重要なデータが変更された際にGoogle Chatへ即座に通知を送ることができ、対応が必要な業務を一覧化できるようにする、などの対応が可能です。

Google Apps Scriptで外部ツールと連携|Slack・ChatWork・Notionの自動化

Google Apps Script(GAS)は、Googleのサービスだけでなく、SlackやChatWork、Notionなどの外部ツールとも連携可能です。

これにより、業務フロー全体をシームレスに自動化できるようになります。
例えば、「スプレッドシートが更新されたらSlackへ通知する」「ChatWorkにタスクを追加する」「Notionに自動で情報を記録する」など、さまざまな業務を効率化できます。

Slackにメッセージを自動送信する

チームの進捗共有や業務の自動通知をSlackで行いたい場合、GASを活用することでスプレッドシートの更新や特定のイベントが発生した際に、自動でメッセージを送信できます。以下のスクリプトを実行すると、Slackの指定したチャンネルに「スプレッドシートが更新されました!」という通知を送ることができます。


function sendSlackMessage() {
  var webhookUrl = "YOUR_SLACK_WEBHOOK_URL";
  var payload = JSON.stringify({ text: "スプレッドシートが更新されました!" });

  var options = {
    method: "post",
    contentType: "application/json",
    payload: payload
  };

  UrlFetchApp.fetch(webhookUrl, options);
}

このスクリプトは、SlackのWebhook URLを使用してメッセージを送信します。スプレッドシートの更新時にトリガーを設定すれば、手作業なしで自動通知を送れるため、チームメンバーの作業状況をリアルタイムで共有できます。

ChatWorkに自動でメッセージを送信する

ChatWorkを業務のタスク管理や社内コミュニケーションに利用している場合、GASを活用すれば、タスクの追加やリマインド通知を自動で送信できます。以下のスクリプトを実行すると、指定したChatWorkルームに「タスクが追加されました!」というメッセージを送信できます。


function sendChatWorkMessage() {
  var apiKey = "YOUR_CHATWORK_API_KEY";
  var roomId = "YOUR_ROOM_ID";
  var message = "タスクが追加されました!";

  var url = "https://api.chatwork.com/v2/rooms/" + roomId + "/messages";
  var options = {
    method: "post",
    headers: { "X-ChatWorkToken": apiKey },
    payload: { body: message }
  };

  UrlFetchApp.fetch(url, options);
}

このスクリプトを実行すると、APIを利用してChatWorkの特定のルームにメッセージを投稿します。スプレッドシートのタスク管理表と連携させれば、新しいタスクが追加された際にChatWorkでメンバーに自動通知することも可能です。

Notionにページを自動生成する

Notionを情報整理やプロジェクト管理に活用している場合、Google Apps Scriptを使うことで、スプレッドシートのデータをもとに自動で新しいページを作成できます。以下のスクリプトは、指定のNotionデータベースに「新しいタスク」というタイトルのページを追加するものです。


function createNotionPage() {
  var notionApiKey = "YOUR_NOTION_API_KEY";
  var databaseId = "YOUR_DATABASE_ID";

  var url = "https://api.notion.com/v1/pages";
  var payload = {
    parent: { database_id: databaseId },
    properties: {
      Title: {
        title: [{ text: { content: "新しいタスク" } }]
      },
      Status: {
        select: { name: "To Do" }
      }
    }
  };

  var options = {
    method: "post",
    headers: {
      "Authorization": "Bearer " + notionApiKey,
      "Content-Type": "application/json",
      "Notion-Version": "2022-06-28"
    },
    payload: JSON.stringify(payload)
  };

  UrlFetchApp.fetch(url, options);
}

このスクリプトを実行すると、Notionの指定したデータベースに新しいタスクページが作成されます。スプレッドシートのタスク管理リストと連携すれば、リストに新しいタスクが追加されたときに、Notionにも自動でタスクを登録できるようになります。

Google Apps Scriptを活用して、今すぐ業務効率化を始めよう!

ここまで、Google Apps Script(GAS)の基本から、実際に業務で活用できる便利なスクリプトまで幅広く紹介してきました。GASを使えば、スプレッドシートの自動更新やメールの送信、SlackやNotionとの連携など、さまざまな業務を効率化できます。

「プログラミングの知識がなくてもできるの?」と思っていた方も、実際のスクリプトを見て「意外と簡単そう」と感じたのではないでしょうか?本記事の内容を活かし、今すぐGASを使って業務の自動化を始めてみましょう!

Google Apps Scriptを活用する3つのメリット

  • ① 無料で使える & 環境構築不要 GASはGoogle Workspaceに標準搭載されており、追加のソフトウェアをインストールする必要がありません。
  • ② ルーチンワークを自動化して時間を節約 繰り返し作業(データ入力、メール送信、スケジュール管理など)をGASで自動化すれば、重要な業務に集中できます。
  • ③ Googleサービス & 外部ツールと簡単に連携できる Gmail、スプレッドシート、Slack、ChatWork、Notionなどと簡単に接続可能です。

GASの学習 & 活用を進めるためのステップ

ステップ1|スクリプトエディタを開いて簡単なコードを実行

まずはGoogleスプレッドシートの「拡張機能」→「Apps Script」を開き、簡単なスクリプトを実行してみましょう。
本記事の冒頭にあるA1セルに文字を入力するスクリプトであれば、特に簡単なので再掲しておきます。

function writeToA1() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  sheet.getRange("A1").setValue("Hello, GAS!");
}

ステップ2|GASで自動化したい業務を見つける

次にGASで自動化したい業務を見つけましょう。

私の経験上、以下のような特徴のある業務は自動化の余地があります。

  • 同じ業務を多頻度・多数回繰り返している
  • 複雑な判断を含まない

私が過去に自動化した経験のある業務を以下に例示します。

  • 毎月同じような明細書をスプレッドシートで作成し、PDF印刷し、ファイル名変更の上、決まったフォルダに保存する
  • お客様のシステムの利用状況のデータをグラフ化し、レポートを作成の上、PDFで送付する
  • システム利用状況を集計し、利用回数が多いお客様を特定し、担当者にSlackで連絡する

ステップ3|トリガーを設定して完全自動化

GASのトリガー機能を活用すれば、スクリプトを特定の時間やイベントに応じて自動実行できます。

まずは小さな自動化から始めて、業務の効率化を進めてみましょう!

まとめ

  • Google Apps Script(GAS)は、Google Workspaceに標準搭載されており、無料で利用できるため、すぐに業務の自動化を始められる。
  • スプレッドシートやGmail、Googleカレンダーと連携し、データ入力やメール送信、スケジュール管理などの繰り返し作業を効率化できる。
  • Slack、ChatWork、Notionなどの外部ツールとも簡単に連携でき、チームの情報共有やタスク管理をスムーズに行うことが可能になる。
  • スクリプトの実行は手動だけでなく、トリガーを設定することで特定の時間やイベントに応じた自動実行ができるようになる。
  • 初めての人でも簡単なスクリプトからスタートでき、少しずつ学習を進めることで、より高度な業務の自動化に挑戦できる。
この記事を書いた人
WorkHack

2015年に早稲田大学を卒業。コンサルティングファームに新卒入社し、業務・システム領域のコンサルティングに携わりました。その後、スタートアップ企業にジョインし、動画制作事業を立ち上げ、自社の収益の柱となるまで育て上げ、さらに情報システムの責任者としてCRMやMAなどのツール導入を行いました。現在はSaasのカスタマーサクセスに従事する傍ら、製品の活用率向上や自社の業務フロー変革の取り組みを行い、幅広い領域で貢献をしてきました。
営業やマーケティングのプレイヤーの経験や高い解像度とテクノロジーと業務変革の知見の両方を持ち、お客様の業務の変革に貢献致します。

WorkHackをフォローする
AutomationBlogBusiness Process
シェアする
タイトルとURLをコピーしました