質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Q&A

解決済

1回答

2394閲覧

Google Apps Scriptのメール一括送信に対しての送信エラー

wakashun

総合スコア5

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

0グッド

1クリップ

投稿2020/10/27 08:41

前提・実現したいこと

Google App Scriptを利用して複数宛先へのGmailの一括送信を実現したいと思っています。
送信先のメールアドレスや宛先名はスプレッドシート、メールの本文はGoogleドキュメントから取得しようとしています。

発生している問題・エラーメッセージ

実行すると以下のエラーメッセージが出てしまいます。ただし、送信先のメールアドレスを確認するとメールは届いています。
何が原因で以下のエラーメッセージが出ているのでしょうか?

Exception: メールを送信できませんでした: 受信者が指定されていません(行 28、ファイル「コード」)
※「GmailApp.sendEmail(mailAddress, subject, body, options);」の箇所が28行目にあたります。

以前以下で同様の質問をさせていただき、解消していたのですが、別の人用にスプレッドシートをコピーしたところコピー先で実行すると再度表示されるようになりました。
送信先のメールアドレスは入力されています。
https://teratail.com/questions/293346

function sendMail(){ const confirm = Browser.msgBox("メール一斉送信","社名・メールアドレスの組み合わせに誤りはありませんか?本当に送信してもよろしいですか?", Browser.Buttons.OK_CANCEL)// キャンセルが押されたら、操作を中止する if (confirm == "cancel") { Browser.msgBox("一斉送信をキャンセルしました") return false;// ここで処理を終わらせる } const sheet = SpreadsheetApp.getActiveSheet(); const lastRow = sheet.getLastRow(); const values = sheet.getRange(1, 1, lastRow, 7).getValues(); const doc = DocumentApp.openById('xxxxxxxxxxxxxxxx'); const docText = doc.getBody().getText(); for(let i = 1; i < lastRow; i++){ const subject = values[i][0]; //メールの件名 const company = values[i][1]; //会社名 const lastName = values[i][2]; //姓 const mailAddress = values[i][3]; //アドレス const options = { 'cc': values[i][4], 'name': values[i][5] } const body = docText .replace('{会社名}',company) .replace('{姓}',lastName) GmailApp.sendEmail(mailAddress, subject, body, options); } }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

こちらメールアドレスを入力するスプレッドシートに不要な文字が入ったセルがあったのが
原因でした。
メールアドレスが入力されている行→空白行→不要な文字が入力された行
不要な文字を削除することで発生しなくなりました。

投稿2020/10/27 09:02

wakashun

総合スコア5

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問