fbpx

Google Apps Script でメルマガを配信してみた

複数の会社に一斉に資料やメールを送りたいけど有料のツールは使いたくない。そんな方におすすめなのがGoogle Apps Scriptを利用したメールの配信です。今回は以下の4つのサービスを使ってメール配信システムを作ってみたいと思います。いずれも GoogleのサービスなのでGoogleのアカウントがあれば無料で使えます。

  • Gmailのメールアドレス 
  • Google スプレッドシート
  • Google ドキュメント
  • Google Apps Script 

事前準備編

送信に使用するGmailの設定

Gmailのアドレスを送信元にする場合は設定不要です。送信元(from)を他のGmailのアドレスに変えたい場合はGmail上で事前に追加しておく必要があります。会社のメーリングリストなどを送信元にしたい場合は設定しておいてください。

Googleスプレッドシートでメール配信リストを作る

以下のような感じで送信先の情報を作っておきましょう。差し込みたい項目の数だけ列を増やします。

Googleドキュメントでメール本文を作る

メールの内容を作成します。改行は<br>に置き換えておきましょう。{会社名} {姓} {名}にはエクセルで入力した値が入ります。

ここまでで事前準備は終わりです。ここからはスクリプトの設定を行っていきます。

スクリプト実行編

  1. 使用するGoogleアカウント以外からログアウトする
    これを忘れると動かなくなることがあるので注意してください。僕はこのせいでスクリプトが動かなくなって時間を無駄にしてしまったのでこのステップは非常に重要です。
  2. Googleスプレッドシートで作成したメール配信リストを開く
  3. ツール>スクリプト エディタを選択する

  1. 以下の画面が表示される

  1. function myFunction() { }を全て消して、代わりに以下のコードをいれる

function sendEmail(){

  const sheet = SpreadsheetApp.getActiveSheet(); //シートをアクティブにする
  const lastRow = sheet.getLastRow(); //最後の行が何行目かを取得
  
  const urlDocument = 'GoogleドキュメントのURLをいれる'; 
  const document = DocumentApp.openByUrl(urlDocument); //URLからドキュメントを取得
  const documentText = document.getBody().getText(); //ドキュメントからテキストデータ取得

  const subject = '件名をいれる'; //件名
   
  for(let i = 2; i <= lastRow; i++){

    const companyName = sheet.getRange(i, 1).getValue(); //1列目:会社名
    const lastName = sheet.getRange(i, 2).getValue(); //2列目:姓
    const firstName = sheet.getRange(i, 3).getValue(); //3列目:名
    const email = sheet.getRange(i, 4).getValue();  //4列目:メールアドレス
    
    const body = documentText
      .replace('{会社名}',companyName)
      .replace('{姓}',lastName)
      .replace('{名}',firstName);
    
    GmailApp.sendEmail(email, subject, body);
  }
}

  1. 5のコードの赤い部分を変更して保存マークをクリックして保存する

  1. sendEmailという項目が表示されるので実行するとメールが送信される

これで無事にメールが配信されるかと思います。

100件までしか送れないので注意

今回紹介した方法はとっても便利なのですが以下の送信制限があります。(CCやBCCなどを設定する場合はそれらもカウントされるので注意してください)

  • 無料のGmail もしくは 無料版のG Suite → 100通/日

  • G Suite Basic / Gov / Business / Enterprise / Education → 1500通/日

それ以上送りたい場合は日を分けて送信してみてくだい。ただ、どうしても100通以上送らなければならない方もいらっしゃると思います。そんな方に向けてSendgridを使って無料で12,000通/日まで送信できる方法も後日お伝えするので気になる方は楽しみにしていてください。

まとめ

今回はGoogle Apps ScriptとGoogleのサービスを組みわせて簡易メルマガ配信ツールを作成しました。無料のツールを組み合わせるだけで簡単にメルマガ配信ツールが作れるのでメルマガの配信ツールを入れるほどではないがちょっとまとまったメールを送りたいという方は是非利用してみてください。

※サイト内に掲載する情報について注意を払ってはおりますが、正確性については一切保証いたしません。また、内容には古い手法やコード、主観に基づいた表現などが含まれている場合があります。こちらのプログラムのご利用により生じた損害について一切の責任を負いません。

資料ダウンロード申し込み

Scroll to Top