【コピペするだけ】Gmailで一部内容を変えて一斉送信する方法(名前の変更、添付ファイル付き)
姉からこんな相談が来た。
「教えて!Wordで、Excelからの差し込み印刷とかあるやん?あんな感じでGmail使って100人分のメールを送信したいんだけど、どうしたらいい?」
姉のスペック・要望
・Googleドライブは使えるけどプログラム苦手
・Googleのコード書くやつで100人分のメールをサクッと送信
・名前とクーポンコード番号を変える
・添付ファイルはつけない
ということでまずはGoogleで検索
Gmailのコード書くやつは、GAS(Google Apps Script)といいます。
ということで、ちょっとコードを変更して
プログラミングの苦手な姉でもコピペだけで一斉メール送信を簡単にできる!方法をやってみましょう。
Googleドキュメントでメール本文を作成する
送信したいメールの文章をGoogleドキュメントで作成します。その際、
宛名や変更したい部分、今回はクーポンコードの番号を
{ } 波カッコ
で囲みます。
今回は、
宛名:{customername}
コード番号:{codeno}
で囲みました。
後で作成したドキュメントのアドレスを使うのでコピペして保存しておきます。
Googleスプレッドシートでメールリストを作成する
送信するメールの送付リストを作成します。
各項目名はなんでもいいですが並びは、
名前、メールアドレス、コード番号
の順番に入力していきます。
そしてシート名が「シート1」となっているので横の逆三角をクリック「名前を変更」を選択してシート名を「リスト」に変更します。
リストができたら、[拡張機能]から[App Script]を選択して、Google Apps Scriptを起動します。
Google Apps Scriptを作成する
スプレッドシートから開いたGoogle Apps Scriptの初期Scriptを消して、このScriptをコピペします。
function sendMail() {
//送信するメールの定義
const senderName = '送り主の名前';
const subject = 'メールの件名';
const DOC_URL = 'Google ドキュメントのURL'; //メールの本文
//使用するスプレッドシートの定義
const spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
const listSheet = spreadSheet.getSheetByName('リスト');
//シートのセル番号を定義
const NAME_COL = 1; //名前の列番号
const MAIL_ADDRESS_COL = 2; //メールアドレスの列番号
const CODE_COL = 3; //クーポンの列番号
const START_ROW = 2; //for構文で読み込み始める行番号
const listLastRow = listSheet.getLastRow();
const openDoc = DocumentApp.openByUrl(DOC_URL);
let wholeText = openDoc.getBody().getText();
//メールを送信
for (var i=START_ROW; i<=listLastRow; i++){
const recipient = listSheet.getRange(i,MAIL_ADDRESS_COL).getValue();
const customerName = listSheet.getRange(i,NAME_COL).getValue();
const codeNumber = listSheet.getRange(i,CODE_COL).getValue();
let body = wholeText.replace("{customername}", customerName).replace("{codeno}",codeNumber);
MailApp.sendEmail(recipient, subject, body);
}
}
const senderName = '送り主の名前';
const subject = 'メールの件名';
const DOC_URL = 'Google ドキュメントのURL';
この3行については、
送り主の名前
メールの件名
Google ドキュメントのURL
を書き換えてください。
編集が完了したらプロジェクトを保存して、実行してみましょう。
最初は承認が必要ですとポップアップがでるので、順番に承認をしていきます。
Google Apps Scriptの実行ログを確認し、「実行完了」となっていればメールはリスト通りに送信されています。
お役に立てたらコーヒーを一杯奢ってください。
わからない、この場合はどうしたらいいの?という場合は、連絡ください。
後日談:
姉からはこのnoteに対して「すごーい」とお褒めの言葉をいただきましたが、トップ画がなんか違うと言われたので、次回はCanvaでなんがいい感じのトップ画を作ってみようと思います。
この記事が気に入ったらサポートをしてみませんか?