以下メールを送るスクリプトを作成してmainは問題なく動きます。これにPDFの容量を追加して、50KB以上はメールを送るスクリプトをPDFを作成したのですが、うまく動作しますせん。添削していただけないでしょうか。よろしくお願いします。
上下の部分で以下の部分のみを追記したましたが、エラーも何もでず、結果もえられませんでした。
diff
1var values = sheet.getRange(2, 3, sheet.getLastRow() - 1, 6).getValues(); // メールアドレスと企業名の一覧を取得 2let targets = sheet.getRange(2, 3, sheet.getLastRow() - 1, 5).getValues() 3var value = {}; // 本文の「%企業名%」を企業名に置き換えてメールを送信 4var count = values.length; 5for(var i=0 ;i <= count-1 ; i++) 6{ 7value[i] = values[i] 8if(value[i] >= 50000) 9{ 10let targets = sheet.getRange(2, 3, i, 5).getValues() 11
main
1function sendAllMail00() { 2 // このスクリプトの実行日の取得 3 var today = Utilities.formatDate(new Date(), 'Asia/Tokyo','yyyy/MM/dd');; // 今日の日付をyyyy/mm/dd形式に直して取得 4 5 // spreadSheetオブジェクトを取得 6 let spreadSheet = SpreadsheetApp.getActive() 7 8 // 件名と本文が書かれたsheetオブジェクトを取得 9 let templateSheet = spreadSheet.getSheetByName("データ項目") 10 11 // 件名はD2セルに入ってるのでその値を取得 12 let title = templateSheet.getRange("D2").getValue() 13 14 // 送信対象のメールアドレス一覧が記載されてるシートを取得 15 let sheet = spreadSheet.getSheetByName("回答") 16 // メールアドレスと企業名の一覧を取得 17 let targets = sheet.getRange(2, 3, sheet.getLastRow() - 1, 5).getValues() 18 // 本文の「%企業名%」を企業名に置き換えてメールを送信 19 for (target of targets) { 20 try { 21 var fileurls = target[4].split('/'); 22 var fileid = fileurls[5]; 23 var file = DriveApp.getFileById(fileid);//添付ファイル取得 24 // 本文はB2セルに入ってるのでその値を取得 25 let body = templateSheet.getRange("E2").getValue() 26 body = body.replace(/%名前%/, target[0]) 27 28 // スプレッドシートのメアド、件名・本文でメールを送信 29 GmailApp.sendEmail(target[1], title, body, {attachments: [file]}); 30 } 31 catch (e) { 32 continue; 33 } 34 } 35 } 36
1function sendAllMail00() { 2 // このスクリプトの実行日の取得 3 var today = Utilities.formatDate(new Date(), 'Asia/Tokyo','yyyy/MM/dd');; // 今日の日付をyyyy/mm/dd形式に直して取得 4 5 // spreadSheetオブジェクトを取得 6 let spreadSheet = SpreadsheetApp.getActive() 7 8 // 件名と本文が書かれたsheetオブジェクトを取得 9 let templateSheet = spreadSheet.getSheetByName("データ項目") 10 11 // 件名はD2セルに入ってるのでその値を取得 12 let title = templateSheet.getRange("D2").getValue() 13 14 // 送信対象のメールアドレス一覧が記載されてるシートを取得 15 let sheet = spreadSheet.getSheetByName("回答") 16 var values = sheet.getRange(2, 3, sheet.getLastRow() - 1, 6).getValues(); 17 var value = {}; 18 var count = values.length; 19 for(var i=0 ;i <= count-1 ; i++) 20 { 21 value[i] = values[i] 22 if(value[i] >= 50000) 23 { 24 let targets = sheet.getRange(2, 3, i, 5).getValues() 25 for (target of targets) { 26 try { 27 var fileurls = target[4].split('/'); 28 var fileid = fileurls[5]; 29 var file = DriveApp.getFileById(fileid);//添付ファイル取得 30 // 本文はB2セルに入ってるのでその値を取得 31 let body = templateSheet.getRange("E2").getValue() 32 body = body.replace(/%名前%/, target[0]) 33 34・・・以降同じ
回答1件
あなたの回答
tips
プレビュー