実現したいこと
申込みフォームから書き出したスプレッドシートのメアドセルに入っている
メールアドレスにメール(画像添付)を一斉配信する
発生している問題・エラーメッセージ
(sendMailToAllで実行)
エラー Exception: Failed to send email: no recipient sendMailToAll
該当のソースコード
function main() { const ss = SpreadsheetApp.getActiveSpreadsheet(); const sheet = ss.getSheetByName('午前の部'); const firstRow = 2; //データの開始(=2行目) const mailCol = 2; //メアド列(=B列) var rowLength = sheet.getLastRow() - (firstRow - 1); var mailaddressList = []; for(let i=0; i < rowLength; i++){ let address = sheet.getRange(firstRow + i, mailCol).getValue(); mailaddressList.push(address); } // 宛先ごとにメール作成、送信 mailaddressList.forEach(address => { // メールアドレスがあるなら送信 if(address!=''){ sendMailToAll(address); } }); } function sendMailToAll(address) { const subject = '本日のチケット送付について'; const body = ` 【チケット配布】 午前の部 バーコードをお送りします。 検問所にて読み込みますので提示をよろしくお願いします。`; // チケット添付 const attachfile = DriveApp.getFileById('XXXXXXXXXXXXXXXXX').getBlob(); const options = { name: 'チケット担当' ,noReply: true,attachments: attachfile }; GmailApp.sendEmail(address,subject,body,options,); }
試したこと
GAS初心者です。2行目B列から一番最後の列までのメールアドレスに送付したいのですが
このエラーが出てしまいます。mainは実行完了となるので、
function main()までは正常なようですが
sendMailToAllを実行した際
最後の GmailApp.sendEmail(address,subject,body,options,);で上記のエラーメッセージが発生しました。
受信側メールアドレスがない?的な事を言っているようですが
どうしても直せません。
どなたかお分かりになる方いらっしゃいましたら、ご教示願います。
回答1件
あなたの回答
tips
プレビュー