【GAS】スプレッドシートからメールの下書きを作成する方法

本記事では、スプレッドシートのセルに入力した内容を元に、ボタンクリックでメール下書きを自動生成する方法を紹介します。

このようなメール下書き自動生成ツールを作成できます
「メールを作成」ボタンをクリックすると・・・
スプレッドシートの内容を元に、メール下書きを自動作成!

実装の流れ

  1. スプレッドシートの準備(ここへ飛ぶ
  2. Apps Scriptを起動してコードを記述(ここへ飛ぶ
  3. メール作成ボタンの設置(ここへ飛ぶ
  4. ボタンをクリックし、Gmailアカウントと連携(ここへ飛ぶ
STEP

スプレッドシートの準備

Googleスプレッドシートを立ち上げて、メールに反映させたい内容を記述していきます。

本実装例では、B列のセルに「宛先(送信先メールアドレス)」「メールの件名」「送る相手の会社名」「送る相手の氏名」「メール本文」をそれぞれ記入するようにしました。

STEP

Apps Scriptを起動してコードを記述

続いてApps Scriptを起動し、B列に入力した内容を元にメール下書きを作成するためのコードを記述します。

「コード.js」が開かれていると思うので、右側にコードを記述します。
本実装では以下コードを記述し、「メールドラフトの作成」というタイトルを設定しました。

function createEmailDraft() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

  // 必要なデータをスプレッドシートから取得
  var mailAddress = sheet.getRange("B1").getValue(); // メールアドレス
  var subject = sheet.getRange("B2").getValue(); // 件名
  var company = sheet.getRange("B3").getValue(); // 会社名
  var name = sheet.getRange("B4").getValue(); // 担当者名
  var content = sheet.getRange("B5").getValue(); // 本文

  // メール本文のフォーマット
  var message = company + "\n" +
                name + "様\n\n" +
                content;

  // メール下書きを作成
  GmailApp.createDraft(mailAddress, subject, message);

  // ユーザー通知
  SpreadsheetApp.getUi().alert("メールの下書きが作成されました!");
}
  • var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();で現在開かれているスプレッドシートを取得します。
  • sheet.getRange("セル").getValue()でスプレッドシートの各セルに入力された値を取得し、変数に代入します。
  • メール本文はmessageという変数に代入します。
    • 変数や文字列は+を使って繋ぎ合わせます。
    • "\n"は改行を表します。
  • GmailApp.createDraft()はGmail に下書きメールを作成するためのメソッドです。
    • 第一引数(必須):宛先メールアドレスを文字列で指定(未定の場合は空欄""にする)
      • 複数指定する場合はカンマ区切りで記述します。(例: “example1@gmail.com,example2@gmail.com”)
    • 第二引数(必須):メールの件名を文字列で指定(未定の場合は空欄""にする)
    • 第三引数(必須):メールの本文を文字列で指定(未定の場合は空欄""にする)
    • 第四引数(任意):以下のプロパティを設定できます。
      • bcc: BCCの宛先を文字列で指定。
      • cc: CCの宛先を文字列で指定。
      • htmlBody: HTML形式の本文を指定。
      • attachments: 添付ファイルを指定。
      • name: 差出人名を指定(送信者の名前部分を設定)。
  • SpreadsheetApp.getUi().alert()でウィンドウメッセージを表示します。

コードを記述できたら保存し、スプレッドシートに戻ります。

STEP

メール作成ボタンの設置

スプレッドシートの「挿入」タブから「図形描画」を選択し、図形とテキストを組み合わせボタンを作成します。
作成したボタンは、スプレッドシートの適当な位置に移動させます。

設置したボタンをクリックし、ボタン右の方に表示される「⋮」をクリックして「スクリプトを割り当て」を選択します。

ウィンドウが表示されるので、STEP 2で作成したメソッド名(本実装ではcreateEmailDraft)を記入します。

STEP

ボタンをクリックし、Googleアカウントと連携

STEP 3で設置したボタンをクリックし、Googleアカウントと連携させると同時にメールが下書きに作成されるかを確認します。
スクリプトを割り当てたボタンを初めてクリックすると、認証を求めるウィンドウが表示されるので、以下画像の通り認証を進めていきます。

認証作業は最初のみで、認証完了後は表示されません。

特に問題がなければコードが実行され、選択したGmailアカウントのメールボックスに下書きが生成されているはずです!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!