前提・実現したいこと
・ドキュメントに文章と画像を記載した内容をそのままメール本文にしたい。
(メール内に画像を挿入)
・スプレットシートに記載した配信先のメールアドレスに一斉送信。
・送信元をGmailに登録した別のメールアドレス(エイリアスとして追加済)に変更したい。
発生している問題・エラーメッセージ
エラー ReferenceError: lastRow is not defined
該当のソースコード
for(let i = 2; i <= lastRow; i++){
const strCompany=mySheet.getRange(i,1).getValue(); //社名 const strSecond=mySheet.getRange(i,2).getValue(); //名前 const strTo=mySheet.getRange(i,3).getValue(); //送り先アドレス const strBody=strDoc.replace(/{社名}/,strCompany).replace(/{名前}/,strSecond);
const htmlbody = "html形式本文";
GmailApp.sendEmail(
strTo,
strSubject,
strBody,
{
htmlBody:htmlbody,
from: strFrom,
name: strSender
}
);
}
試したこと
補足情報(FW/ツールのバージョンなど)
過去の質問を検索して似たような内容からちょこちょこと抜粋している為、他にもおかしい箇所があるのでは?
と思うので全文記載させて頂きます。
function sendMail(){ const mySheet=SpreadsheetApp.getActiveSheet(); const rowSheet=mySheet.getDataRange().getLastRow(); const docTest=DocumentApp.openById("ドキュメントのID"); const strDoc=docTest.getBody().getText(); //ドキュメントの内容を取得 / const strSubject="御礼"; const strFrom="marumarumaru@maru.co.jp"; const strSender="○○株式会社"; for(let i = 2; i <= lastRow; i++){ const strCompany=mySheet.getRange(i,1).getValue(); //社名 const strSecond=mySheet.getRange(i,2).getValue(); //名前 const strTo=mySheet.getRange(i,3).getValue(); //送り先アドレス const strBody=strDoc.replace(/{社名}/,strCompany).replace(/{名前}/,strSecond); const htmlbody = "html形式本文"; GmailApp.sendEmail( strTo, strSubject, strBody, { htmlBody:htmlbody, from: strFrom, name: strSender } ); } }
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/12/16 03:00