実現したいこと
・Gmailで画像付きの一斉メールを送信したい
前提
初心者です。
GASで画像付きの一斉メールを送信するScriptを書いています。
画像がうまく取り込めません。修正方法を教えてください。
発生している問題・エラーメッセージ
画像データが取り込めず、{画像1}に「<img src="cid:img1">」がテキストで表示されてしまいます。
GetBlobが正しく反応していないのだとは思います。
### 該当のソースコード ```GAS function sendMail() { //送信するメールの定義 const senderName = 'xx'; const subject = 'xx'; const DOC_URL = 'https://docs.google.com/xx'; //メールの本文 //使用するスプレッドシートの定義 const spreadSheet = SpreadsheetApp.getActiveSpreadsheet(); const listSheet = spreadSheet.getSheetByName('リスト'); //シートのセル番号を定義 const NAME_COL = 2; //名前の列番号 const MAIL_ADDRESS_COL = 3; //メールアドレスの列番号 const COMPANY_COL = 4; //会社名の列番号 const START_ROW = 2; //for構文で読み込み始める行番号 const listLastRow = listSheet.getLastRow(); const openDoc = DocumentApp.openByUrl(DOC_URL); let wholeText = openDoc.getBody().getText(); //ドライブから画像データを取得 const folder = DriveApp.getFolderById('xx'); let driveImage = DriveApp.getFilesByName('xx').next(); let img1 = driveImage.getBlob(); //メールを送信 for (var i=START_ROW; i<=listLastRow; i++){ const recipient = listSheet.getRange(i,MAIL_ADDRESS_COL).getValue(); const clientName = listSheet.getRange(i,NAME_COL).getValue(); const company = listSheet.getRange(i,COMPANY_COL).getValue(); let body = wholeText.replace("{clientname}",clientName).replace("{company}",company).replace("{画像1}",'<img src="cid:img1">'); MailApp.sendEmail(recipient, subject, body, img1); } }
できました!ありがとうございます!

回答1件
あなたの回答
tips
プレビュー