Gmailに届いた大量のメール、毎回手動で整理していませんか?
本記事では、GAS(Google Apps Script)を使って「Gmailの情報を自動でスプレッドシートに転記する方法」をステップごとに解説します。
この記事を読めばGmailに送られてくるメールを効率的にスプレッドシートへ格納し整理・分析を行うことができます。
初心者の方でも理解しやすいように手順をステップごとに画像をたくさん使ってご説明します。
また、すぐに使えるようにサンプルコードも配布します。
日常の業務やタスク管理をより効果的に行いたい方々は、是非本記事を参考にしてください。
この記事でできるようになること・目的

本記事を読めば、Gmailの情報をスプレッドシートへ転記する作業を自動的に行えます。
Gmailは、多くのユーザーを持つメールプラットフォーム。
日常的に使用する方も多いと思います。
スプレッドシートは、情報の整理・可視化において非常に効果的なツール。
この2つを組み合わせてアンケートメール、問い合わせメールの集計、整理に活用されている方もいらっしゃると思います。
例えば、以下のような業務に活用できます。
- お問い合わせ内容の自動一覧化
- 応募フォームへの返信内容のログ保存
- 営業メールの受信リスト化
メールを1件つづ開いて手作業でコピーしていくことも可能ですが時間が掛かりますし漏れやコピーミスなど発生してしまいます。
ミスを防ぐためにも自動化が必要。
日々届く大量のメールからの情報を自動的に抽出し、整理して業務の効率化を図りましょう!
GASでGmail本文を抽出の実装の流れ
今回は以下の流れで実装していきます。
- STEP1転記用スプレッドシートの作成
最初に、メール情報を記録するスプレッドシートを作成します。
Googleドライブにアクセスし、新規ボタンからスプレッドシートを開き、必要な列名(受信日時、宛先、送信元、件名、本文)を入力します。
スプレッドシートは「転記用スプレッドシート」と命名します。 - STEP2転記済判定用ラベルの作成
Gmailにログインし、「転記済」という新しいラベルを作成します。
これは、メールがスプレッドシートに転記された後に、同じメールが再度転記されないように識別するために使用します。 - STEP3GASスクリプトの作成
Google Apps Scriptを使用してスクリプトを作成します。
スクリプトはGmailからメール情報を取得し、スプレッドシートに転記する処理を自動化します。
主なステップは以下の通りです- Gmailから「転記済」ラベルがないメールを検索。
- 各メールの受信日時、宛先、送信元、件名、本文を取得。
- 取得した情報をスプレッドシートに記録。
- 処理が完了したメールに「転記済」ラベルを追加。
メール情報抽出スクリプトを作ってみよう!

ここからは具体的なスクリプトを作成して、Gmailの本文情報をスプレッドシートにすぐに整理する方法を説明します。
今回の手順は、以下のとおり。
- 転記用スプレッドシートの作成
- Gmailにて転記済を判定できるようにラベルを作成
- GASスクリプトの作成
つぎの項目から解説していきます。
転記用スプレッドシートの作成
まずは、メール情報を転記するスプレッドシートを作成します。
Googleドライブにアクセス。
WebブラウザからGoogleドライブ(https://www.google.com/intl/ja_jp/drive/)にアクセス。
「ドライブを開く」を押します。

ログインしていない方は、先にGoogleアカウントでログインをしておきましょう。

「ドライブを開く」と画像のような画面になります。

スプレッドシート新規作成
新規ボタンをクリックしてスプレッドシートを選択します。

転記するメール情報を入力
入力しなくてもスクリプトは動きますが見やすいように列名を入力します。
Gmailから抜き出す以下の情報を列名として1行目に入力しておきます。
列名
- 受信日時
- 宛先
- 送信元
- 件名
- 本文
コピペ用
| 受信日時 | 宛先 | 送信元 | 件名 | 本文 |
そのままスプレッドシートに貼り付け可能です。
ファイル名は、「転記用スプレッドシート」としておきましょう。

転記済判定用ラベルの作成
続いて、Gmailに転記済みかを判断するためのラベルを追加します。
Gmailでは、メールにラベルを設定できラベルによってメールを分類できます。
今回作成するスクリプトでスプレッドシートへの転記が1度されたメールは、2回目にスクリプトが実行された際に二重で取り込まれないように
「転記済」というラベルをスクリプト実行時に設定します。
ラベルの設定手順は、以下のとおり。
Gmailにアクセス
WebブラウザからGmail(https://www.google.co.jp/mail/)にアクセスします。

ラベルの新規作成 ラベルの横の+ボタンをクリックします。

ラベルを設定 新しいラベルとして「転記済」を設定します。

ラベル一覧に転記済が追加されていれば成功です。

GASスクリプトの作成
いよいよGoogle Apps Scriptを記述します。
作成した転記先スプレッドシートにて拡張機能-AppsScriptをクリックします。

AppScript画面に切り替わります。

AppsScript画面についてご説明します。
1.プロジェクト名
クリックすると変更できます。
2.スクリプトファイル
プロジェクトに配置されているスクリプトファイルを確認できます。
各項目横の+ボタンを押すことでファイルを新規で作成できます。
3.ツールバー
スクリプト作成時に必要な操作ボタンがまとめられています。
保存やデバッグ、実行ログ表示、操作を1つ戻るなど
4.エディターエリア
スクリプトファイルの編集を行うエリア。
こちらにプログラムを記述します。
手始めにプロジェクト名を変更してみましょう。
今回は、メール送信スクリプトなので「MailCopy」に変更しましょう。

続いてプログラムを記述します。
ITツールの匠ストア「GASでGmail本文を抽出!スプレッドシートに情報を瞬時に整理!」はこちら >>
転記用スプレッドシートにメール情報が格納されていれば成功です。

応用編:自動更新を実装してみよう

今回は、応用編として定期的にGmailを確認して未転記のメールがあればスプレッドシートに転記してくれる自動更新機能の実装をしてみましょう。
自動更新は、5分ごとにスクリプトを実行して新着メールを転記するようにします。
トリガーは「一定時間ごとにGASスクリプトを自動実行する」ための設定です。
手動実行の手間を省けるため、業務効率化に必須です。
自動更新の方法は、GASのトリガー機能を利用します。
トリガー設定
AppScript画面にて以下の操作を行います。
トリガーボタンをクリック。

「+トリガーを追加」ボタンを押します。

以下の設定でトリガーを設定して保存を押します。
実行する関数を選択:MailCopy
実行するデプロイを選択:Head
イベントのソースを選択:時間主導型
時間ベースのトリガーのタイプを選択:分ベースのタイマー
時間の間隔を選択(分):5分

自作したスクリプトにトリガーを設定する場合は、セキュリティ警告がされるので許可しましょう。
一覧に設定したトリガーが表示されればトリガー設定完了です。

新着メールを受信して5分後に自動的にスプレッドシートに転記されていれば成功です。
ただし数が多すぎるとタイムアウトでエラーとなります。
まとめ

今回は、GmailとGoogleスプレッドシートを連携してメールをGoogleスプレッドシートに転記するスクリプトを作成しました。
本記事の内容をまとめると以下。
GASを活用すればメールの情報をスプレッドシートへの格納・整理が簡単に行えます。
ぜひ本記事を参考にGASを利用して業務の効率化を測ってみてください。




