
Gmailで複数宛先へ一括送信する方法【スプレッドシート】【GAS】【超初心者向け】
今回はGoogleスプレッドシートとドキュメントを使って、同じ内容のメールを一括送信する方法をご紹介!
同じメール内容を複数の宛先に送る場合、複数回分メールアドレスを入力するのはとても面倒!
そんな方はぜひ、GASを使ってみてください!
GASを使うとメールの内容入力から送信までの作業を一括で行うことが可能です!
また、後で送りたいメールアドレスを追加する場合もスプレッドシートに追加するだけです!
では早速やっていきましょう!
※Googleの無料アカウントは、1日に100通までの送信制限ですのでご注意くださいませ
■事前準備1
Googleのスプレッドシートを開き、メールの送信先を準備しておきます。
■事前準備2
ドキュメントでメールの内容を作成します
①ドキュメントを開く
②メール内容を記載
下記はスプレッドシートで設定した内容が入ります。
・{会社名}
・{姓}
・{名}
その他の内容は自由に記載してOKです。
②ドキュメントのIDを取得
ファイル→「共有」をクリック
③「リンクをコピー」をクリック
④IDのみを抽出する
メモ帳などにコピペするとリンクがコピーされていることがわかります。
下記の赤線の部分がIDになります。d/の後から/editの前までです。その部分のみをコピーします。
⑤下記の赤線の部分にIDをペーストする
■スクリプトを作成
下記のスクリプトをコピペして使ってください。
・ドキュメントID
・件名
・名前
は固定になります。適宜変更して使ってください。
function mailReminder() {
const sheet = SpreadsheetApp.getActiveSheet();
const lastRow = sheet.getLastRow();
const doc = DocumentApp.openById('ドキュメントID'); //メール内容のドキュメントID
const docText = doc.getBody().getText();
const subject = '【送信テスト】ああああああ'; //件名
const options = {name: '株式会社北京ダック大好き'}; //名前
for (let i = 2; i <= lastRow; i++) { //i=2は行の数字を表す
const company = sheet.getRange(i, 1).getValue(); //送信先の会社名
const lastName = sheet.getRange(i, 2).getValue(); //送信先担当者の姓
const firstName = sheet.getRange(i, 3).getValue(); //送信先担当者の名
const recipient = sheet.getRange(i, 4).getValue(); //送信先の¥メールアドレス
const body = docText
.replace('{会社名}',company)
.replace('{姓}',lastName)
.replace('{名}',firstName);
GmailApp.sendEmail(recipient, subject, body, options);
}
}
■スクリプトを実行
①「実行ボタン」を押下
②※最初は権限の商品が出る場合があります
「権限を確認」を押下
③使用する「アカウント名」をクリック
④「詳細」をクリック
⑤安全ではないページに移動 を確認
⑥「許可」を押下
⑦再度実行する
実行ボタンをクリックすると、下部に実行ログが表示されます。
問題がなければ、実行開始→実行終了 となります。