【超簡単】GASでメールを送信する方法【自動送信】

email-marketing プログラミング

Googleが提供するサービス「Google Apps Script(GAS)」を使えば、簡単にメールを自動送信することができます。

GASは、JavaScriptベースのスクリプト言語で、Googleアカウントを持っていれば無料で使えます。

Gmailをはじめ、ほかのGoogleのサービスと簡単に連携することができます。

今回は、GASを使ってメールを送信する方法を紹介します。

GASでメールを送信する

GASを使うには、スクリプトエディタを開きます。

スクリプトエディタの開き方がわからない方は、次の記事を参考にしてください。

スクリプトエディタを開いたら「コード.gs」に、以下のスクリプトを書きましょう。

//メールを送信する
const sendMail = () => {
  //送信先のメールアドレス
  const recipient = "hogehoge@testmail.com";
  //メールの件名
  const subject = "テストメールの件名";
  //メールの本文
  const body = "テストメールの本文です。";
  
  //メールを送信する
  GmailApp.sendEmail(recipient, subject, body);
};

4、6、8行目で、送信するためのアドレス、件名、本文を変数に格納しています。

メインとなるのが、11行目の「GmailApp.sendEmail()」です。「GmailApp.sendEmail()」が、メールを送信しています。

GmailApp.sendEmail(送信先のメールアドレス, 件名, 本文)で、送信先のメールアドレスなどを指定します。

「sendMail()」を実行して、メールを送信してみましょう。

実行する前に、4行目のメールアドレスを、自分のメールアドレスなどに変更しておいてください。

実行は、スクリプトエディタで実行する関数を選択し、「実行」をクリックします。

sendMail

初めて実行するときには、承認を求められます。以下の手順で承認してください。

承認方法
  1. 「承認が必要です」というウインドウで、「権限を確認」をクリック。
  2. Googleアカウントでログイン。
  3. 「このアプリはGoogleで確認されていません」の左下の詳細をクリック。
  4. 「メール送信(安全ではないページ)に移動」をクリック→「許可」。

送信先のメールアドレスに、メールが届けば成功です。

CCやBCCを追加して、複数のメールアドレスに送信する

GASで、メールを送信できましたが、CCやBCCで複数のアドレスに送信したいときもありますよね。

複数のメールアドレスに送信するときも、「GmailApp.sendEmail()」を使います。

GmailApp.sendEmail(送信先のメールアドレス, 件名, 本文, オプション)のオプションで、CCなどを指定します。

オプションには、様々なパラメータを指定できます。

オプションのパラメータ
  • cc:CCメールアドレスのコンマ区切りのリスト
  • bcc:BCCメールアドレスのコンマ区切りのリスト
  • name:メールの送信者の名前を変更できます。
  • noReply:trueにすると送信者がnoreply@example.comになり返信不可になります。(GoogleWorkspaceアカウントのみ利用可能)
  • replyTo:デフォルトの返信先を変更できます。

使いたいオプションだけ指定しましょう。

オプションを使用したスクリプトが、以下のものです。

//メールを送信する
const sendMail = () => {
  //メール本文に差し込むための変数
  const recipientName = "送信先の名前";
  const myName = "私の名前";

  const recipient = "hogehoge@testmail.com";
  const subject = "テストメールの件名";
  
  //送信する本文(テンプレートリテラル)
  const body = `${recipientName} 様
    
  テストメールの本文です。

  ${myName}`;
  
  //オプション
  const option = {
      bcc : "fugafuga@testmail.com, piyopiyo@testmail.com",
      name : "テストメール窓口",
      replyTo : "123456789@testmail.com"
  };
  
  //メールを送信する
  GmailApp.sendEmail(recipient, subject, body, option);
};

メール本文を格納している変数「body」は、テンプレートリテラルを使っています。

テンプレートリテラルは、文字列を「`(バッククォート)」で囲みます。

テンプレートリテラルを使うことで、改行コード「\n」を書くことなく、スクリプトの中で改行するだけで、改行がメール本文にも反映されます。

テンプレートリテラルで変数を使いたいときは、「${変数名}」で書きます。

オプションのCCやBCCは、メールアドレスを「,」で区切ることで複数のアドレスに送信することができます。

メールを定期的に自動送信する

GASの「sendMail()」を実行すれば、メールを送信できます。

毎日メールを送りたいとき、毎回スクリプトエディタを開いて、「実行」をクリックするのは大変ですよね。

GASには自動でスクリプトを実行する「トリガー」という機能があります。

トリガーを使うことで、定期的に「sendMail()」を実行して、メールを送ることができます。

つまり、メールの自動送信です。設定してみましょう。

スクリプトエディタから、「時計マーク」のトリガーを選択し、「+トリガーを追加」をクリックします。

event-line-10

今回は、毎日午後6時くらいに送信するように設定します。

実行する関数は「sendMail」、特定の時間に動作させるので「時間主導型」を選択します。

「日付ベースのタイマー」、「午後6時~7時」をそれぞれ選択し、「保存」をクリックします。

これで、毎日6時~7時に「sendMail()」が実行され、メールが送信されます。

すごく簡単ですね。

まとめ

GASで「GmailApp.sendEmail()」を使えば、簡単にメールを送信することができます。

「GmailApp.sendEmail()」のオプションを使えば、CCやBCCも追加してメールを送信することができます。

メールを定期的に自動送信するには、トリガーを使います。

スプレッドシートと連携して、更に便利に使うこともできますね。

スプレッドシートにカレンダーを作れば、その日付の内容を通知することもできます。

タイトルとURLをコピーしました