Google Apps Scriptでスプレッドシートのリストをもとに宛名を差し込んだメール本文を作る

★気に入ったらシェアをお願いします!


address

photo credit: Idyll Ours via photopin (license)

みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。

引き続きGoogle Apps Scriptで簡単メールマガジンシステムを作成しています。

ドキュメント、スプレッドシート、GmailなどGoogleサービスを連携させればできちゃいますからね、すごいですよね。

さて、前回はGoogleドキュメントの文書をGoogle Apps Scriptで取得する方法についてお伝えしました。

初心者でも簡単!Google Apps Scriptでドキュメントを取得して表示する方法
Google Apps Scriptでメールマガジンを送るシステムを作っています。本文はドキュメントで作成をしたいと思いますので、今回はGASでドキュメントを取得する方法についてお伝えをしていきます。

今回は、スプレッドシートのリストの情報をもとに、ドキュメントで作成したメール本文内の社名、姓名などを差し込みして出力する方法についてお伝えします。

では、よろしくお願いいたします!

スプレッドシートの内容でドキュメントの内容を書き換えてログに出力

今回のゴールについて整理をしていきますね。

まず、Googleドキュメントでメール本文のベースとなる文書を用意しておきます。

Googleドキュメントで作成したメール本文

{社名}、{姓}、{名}の箇所をスプレッドシートの情報に合わせて差し替えていくことになります。

次にスプレッドシートはこちらです。

スプレッドシートのメール宛先リスト

リストは2件あり、A列から順番に社名、姓、名を記載しています。メールアドレスはまだ空欄です。

今回は、それぞれの宛先向けに差し替えたメール本文をログに出力するというスクリプトを書いていきたいと思います。

社名、姓名を差し替えてログに出力するスクリプト

今回は前述のスプレッドシートからスクリプトエディタを開いて下記スクリプトを書きました。

まず、3行目から9行目までは、スプレッドシートのシートとその最終行数、またドキュメントの内容を取得する部分です。

別の記事でお伝えしています。スプレッドシートについてはこちら。

Google Apps Scriptでチャットワークの名言botを作る方法
初心者向けGoogle Apps Scriptでチャットワークを操作するシリーズです。今回はスプレッドシートの操作、イベントトリガーなどの設定を利用してチャットワークのbotを作る方法についてです。

ドキュメントについてはこちらをご覧ください。

初心者でも簡単!Google Apps Scriptでドキュメントを取得して表示する方法
Google Apps Scriptでメールマガジンを送るシステムを作っています。本文はドキュメントで作成をしたいと思いますので、今回はGASでドキュメントを取得する方法についてお伝えをしていきます。

replaceで文字列を差し替える

今回のキモはこのreplaceの部分です。

文字列.replace(パターン,置換文字列)

replaceメソッドは文字列中の特定のパターンと一致する文字列を置換文字列と置換します。

このパターンというのは正規表現という書き方で記述する必要があるのですが、スラッシュで囲います。

今回はいずれの場合も完全一致ですので、「/{社名}/」「/{姓}/」「/{名}/」と単純にスラッシュで囲うだけでOKです。

またreplaceメソッドは

と書いても良いのですが

と連続して一行につなげて記述することができます。このような書き方をメソッドチェーンと言いますが、こちらのほうが若干スッキリ書けますね。

実行してログを確認する

このスクリプトを実行してみます。初回はドキュメントとスプレッドシートへのリクエストの許可が必要ですので、快く許可してあげて下さい。

Ctrl + Enter でログを見てみますと

宛名差し込み済みのメール本文をログ出力

2件のメッセージが出力されています。それぞれ問題なく社名、姓名が差し込みされていますね。

まとめ

これでドキュメントの本文をベースに、スプレッドシートのリスト宛を想定して宛名を差し込みして出力することができました。

replaceメソッドを使えば本文への社名、姓名などの差し込みも簡単です。

次回はいよいよスプレッドシートにメールアドレスも記入してGmailにメッセージを送っていきたいと思います。

たったの38行!Google Apps Scriptで超簡易メルマガ配信システム
Google Apps Scriptで超簡易メルマガ配信システムを作成しています。今回はいよいよスプレッドシートのアドレス宛にドキュメントの本文をGmailで送信する処理を追加していきます。

どうぞお楽しみに!

連載目次:Google Apps Scriptでメルマガシステムを作っちゃおう!

Google Apps ScriptでGmail、スプレッドシート、ドキュメントを連携させて操作することでメルマガシステムが簡単に実現できます。思ったより2割くらい簡単にできますよ。ちなみに無料です…さすがGoogle。
  1. 初心者でも簡単!Google Apps ScriptでGmailを操作してメールを送る方法
  2. 初心者でも簡単!Google Apps Scriptでドキュメントを取得して表示する方法
  3. Google Apps Scriptでスプレッドシートのリストをもとに宛名を差し込んだメール本文を作る
  4. たったの38行!Google Apps Scriptで超簡易メルマガ配信システム
  5. 名刺管理アプリCAMCARDの連絡先リストをスプレッドシートに取り込む
  6. 【GAS】名刺管理アプリの出力データを活用してメルマガ配信リストを自動更新する
  7. Google Apps Scriptのスプレッドシート読み書きを格段に高速化をする方法
  8. Google Apps Scriptのメルマガ配信リスト自動更新スクリプトを高速化する
  9. Google Apps Scriptでスプレッドシートに独自のメニューを追加する方法