前提・実現したいこと
GASを用いて複数のメールを一斉作成するコードを書いています。
列ごとに「to」「件名(物件名)」「差し込み文書(担当者名を挿入)」を設定しています。
「件名」「差し込み文書」は上手く列ごとに作成できたのですが、
全てのメールの「to」がメール1の To1,To2,To3 になってしまいます。
メール1は【3行目】の宛先へ、メール2は【4行目】の宛先へ送りたいです(下記スプレッドシートご参照)。
メールは一度に30件程度作成します。
for文で繰り返すスクリプトを入れたのですが、
下記のrecipientの指定が間違えているのかなと考えているのですが、
どうすればいいのか分かりません。
ご教授いただければ幸いです。
宜しくお願い致します。
※補足です※
アドレスのセルにはFILTER関数を入れていて、
別途の表からメールアドレスを取ってくるようにしています。
(E,F,G列の担当者名を入れると、別表からB,C,D列にアドレスが入ります。)
発生している問題
全てのメールの宛先がメール1の To1,To2,To3 になる。
該当のソースコード
let lastRow = sheetList.getLastRow(); let recipient = sheetList.getRange(3, 2, lastRow-2, 3).getValues()[0];
↓全体のコードです。
const ss = SpreadsheetApp.getActiveSpreadsheet(); const sheetList = ss.getSheetByName('01_リスト'); const sheetmailbun = ss.getSheetByName('02_メール文'); function teishutusha() { let lastRow = sheetList.getLastRow(); let kirinsan = sheetList.getRange(3, 2, lastRow-2, 9).getValues(); const columName = sheetList.getRange(2, 2, 1, 9).getValues()[0]; let kabasan = []; //空のリストを定義 for (let zousan of kirinsan) { let nekosan = {}; for (let index in zousan) { nekosan[columName[index]] = zousan[index]; } kabasan.push(nekosan); } return kabasan; } function createDraft(){ let kabasan = teishutusha(); for(let nekosan of kabasan){ let _subject = sheetmailbun.getRange('C2').getValue(); let subject = _subject.replace('${物件名}', nekosan['物件名']) let _body = sheetmailbun.getRange('c3').getValue(); let body = _body.replace(/${担当者1}/g, nekosan['担当者1']) .replace(/${担当者2}/g, nekosan['担当者2']) .replace(/${担当者3}/g, nekosan['担当者3']) .replace(/${物件名}/g, nekosan['物件名']) let options = { //★★★ccを”,”でいれる!!★★★ "cc": "cc_desuyo@gmail.com,cc_desuyo-222@gmail.com" } let lastRow = sheetList.getLastRow(); let recipient = sheetList.getRange(3, 2, lastRow-2, 3).getValues()[0]; GmailApp.createDraft(recipient, subject, body, options); } }
↓引用したいスプレッドシートです。
-|【B2セル】To1|【C2】To2|【D2】To3|【E2】担当者1|【F2】担当者2|【G2】担当者3|【H2】物件名|
|:--|:--:|--:|
メール1|aaa@gmail.com|bbb@gmail.com|ccc@gmail.com|佐々木|山田|佐藤|札幌|
メール2|ddd@gmail.com|eee@gmail.com|fff@gmail.com|小林|島田|岡田|名古屋|
メール3|ggg@gmail.com|hhh@gmail.com|iii@gmail.com|石川|桜井|小島|大阪|
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/26 12:29
2021/06/26 13:53
2021/06/26 16:06