Google Apps Script(GAS)は、Googleが提供するスクリプト開発環境です。
GASを使用すると、Google Workspace(旧称:G Suite)の各種サービス(Gmailやスプレッドシートなど)をプログラムで操作し、業務を自動化することができます。何より嬉しいのは、GASはブラウザから直接利用可能で、専用のソフトウェアをインストールしたり開発環境を用意したりする必要がなく、Googleアカウントさえあれば無料ですぐ利用できる点です。
本記事では、プログラミング初心者にも取っつきやすいGASの始め方や実際に自動化した例を紹介します。
- スプレッドシートやGmailなどのGoogleサービスを連携させ、様々なタスクを自動化できる。
- データの集計やメール送信、ファイル整理など
- JavaScriptベースの言語
- Web開発経験者には親しみやすく、初心者にとっても学びやすいプログラミング環境。
公式ドキュメントやサンプルコードが豊富に用意されており、独学でも習得しやすい。
- Web開発経験者には親しみやすく、初心者にとっても学びやすいプログラミング環境。
- ブラウザだけで利用可能
- GASはブラウザから「スクリプトエディタ」を開くだけで利用でき、すぐに始められる。
- 無料で利用可能
- Googleアカウントさえあれば無料で利用でき、個人から企業まで幅広く利用できる。
GASの始め方
スクリプトエディタを開く
GASは、Googleの各種サービス(スプレッドシート、ドキュメント、スライドなど)から直接アクセスする方法と、Google Apps Scriptの専用ページから開く方法の2つがあります。
スプレッドシートやスライドから開く場合
- スプレッドシートやスライドを開きます。
- メニューの「拡張機能」から「Apps Script」を選択します。
- 新しいタブでスクリプトエディタが開きます。
いずれの方法でも、以下のような「スクリプトエディタ」が開くはずです。
スクリプトを作成する
スクリプトエディタが開いたら、簡単なプログラムを書いてみましょう。
初期状態で表示される「コード.gs」ファイルに、以下のコードを記述します。
function myFirstScript() {
Logger.log("Hello, GAS!");
}
コードを書いたら、フロッピーアイコンをクリックして保存し、実行アイコン(▷)をクリックします。
(現在はmyFirstScript
という関数1つのみですが、複数記述した場合は、どの関数を実行するか選べるようになります。)
プログラムが実行され、ログに「Hello GAS」が表示されているはずです。
初回実行時には、GASが利用するGoogleアカウントにアクセス権を付与するようポップアップが表示される場合があります。「許可」をクリックして、スクリプトの実行を承認しましょう。
トリガーの設定(必要に応じて)
特定のタイミングや条件で、スクリプトを自動実行するトリガーを設定できます。
左側にある「時計アイコン(トリガー)」 → 「トリガーを追加」をクリックし、以下情報を入力することで設定できます。
- 実行する関数
- 実行するタイミング(例:毎日、スプレッドシートの変更時など)
トリガーを応用すれば、以下のようなツールを実装できます。
- 毎朝9時に、自動でスプレッドシートの情報を収集してレポートをメール送信する
- 特定のラベルが付けられた受信メール(Gmail)を、スプレッドシートに自動記録する。
- Googleドライブ内の特定フォルダで、古いファイル(1年以上経過したもの)を自動的に削除する。
ファイル / ライブラリ / サービスとは
- ファイル
-
プロジェクト内で使用されるコードやリソースを、ファイル単位で管理できます。
- スクリプトファイル(例:
コード.gs
)- JavaScriptでコードを記述するファイル。プロジェクト内で複数作成できます。
- ファイルごとにコードを分割することで管理しやすくなります。
- HTMLファイル(例:
index.html
)- HTMLやCSSを記述してWebアプリケーションのUIを作成するためのファイル。
- GASの「HTMLサービス」を利用する場合に使用します。
- スクリプトファイル(例:
- ライブラリ
-
他のプロジェクトで作成された便利なコード(ライブラリ)を再利用できます。
ライブラリの「スクリプトID」を入力することで追加できます。- 他の人が作成したコードを利用
- OAuth認証やカレンダーAPI用などの公式ライブラリや、コミュニティが開発した便利なライブラリなど
- 再利用可能なコードを共有
- 自分のプロジェクトで作成した汎用的なコードをライブラリとして公開し、他のプロジェクトやチームメンバーが利用
- 他の人が作成したコードを利用
- サービス
-
Googleが公式に提供するAPIを、簡単かつ直接的に利用できます。
GAS専用に設計されているため、例えばスプレッドシートやGmailなどのGoogleサービスとの連携を、ライブラリより簡易にできる機能を追加できます。例)YouTube Data API:YouTubeのデータ(動画、チャンネル、再生リストなど)を取得・操作できるAPI
GASを使った業務の自動化例
当サイトでは、筆者が仕事で活用している自動化ツールの作成手順を、コードと合わせて紹介しています。
皆さんの業務でも役立てると思いますので、適宜カスタマイズして使用してみてください!
スプレッドシートからメールの下書きを作成するツール
スプレッドシートにメールのテンプレート(宛先、件名、内容など)を作成しておき、シート内に作成したボタンをクリックすることで、メールの下書きが自動生成されるツールです。「過去に送信したメールをコピペして一部分のみ修正して別の人に送信」のような操作をよく行う人は、これを作っておくと手間やミスを減らせます。
メールを検索して内容を抽出し、スプレッドシートに転記するツール
受信メール(送信メールでもOK)から特定のメールを検索し、さらにメールの内容の特定の部分のみを抽出してスプレッドシートに転記するツールです。内容の抽出には、予め決まったフォーマットに則ったメール文のみ有効です。(フォーマットを改変されると抽出できない場合あり。)
スプレッドシートからスライドを作成するツール
スプレッドシートの内容を元に、自動でスライドを作成するツールです。スライドには予めテキストボックスやテーブルを配置しておき、スプレッドシートに書かれた内容をボタンクリックで転記します。会議資料や発注書など、決まったフォーマットでスライドを作成する場合に特に便利です。
フォームの回答をスプレッドシートまたはスライドに自動転記するツール
フォーム送信時、その回答を自動でスプレッドシートまたはスライドに転記するツールです。顧客情報や受注内容の登録など、複数人が共通のフォーマットをを使って作業を行う場合に特に便利です。