前提・実現したいこと
会社の同期の中で「情報共有シート」があり、
それぞれのタブに情報を書き込み、新着情報を「新着」タブに記入を行う。
「新着」が更新されたら、メールリスト上のユーザーにGmailで通知を送りたい。
発生している問題・エラーメッセージ
IMPORTRANGEを用いて基シートの「新着」タブを読み込んでいるのだが、 基シートの別のタブ(Ex.)最終更新日等)に編集がされた場合にも、 メールが配信されてしまう。 トリガーは「スプレッドシート」「変更時」で設定。
該当のソースコード
function
1 var ss = SpreadsheetApp.getActiveSpreadsheet();//スプレッドシートを取得 2 var Sheet = ss.getSheetByName("シート3");//取得するシートの記入 3 var Cell = Sheet.getActiveCell().getA1Notation();//セルの範囲を取得 4 var rowSheet = Sheet.getDataRange().getLastRow();//使用している範囲の最終行を取得 5 6 // Googleドキュメントからメールの件名と本文を取得 7 var doc = DocumentApp.openById('1w0d2NVESpMM5-78vLmrne9wmda0Z1Gpw0eDjwdzXdRQ'); 8 var subject = doc.getName(); 9 var text = doc.getBody().getText(); 10 11 // Googleスプレッドシートからデータ取得 12 var spreadsheet = SpreadsheetApp.getActive(); 13 var sheet1 = spreadsheet.getSheetByName('シート1'); 14 var MailList = sheet1.getDataRange().getValues(); 15 16 17 for(var i = 1; i < MailList.length; i++) { 18 var name = MailList[i][0]; 19 var email = MailList[i][1]; 20 21 var replacedText = text.replace('{氏名}', name); 22 23 MailApp.sendEmail(email, subject, replacedText); 24 } 25}
補足情報(FW/ツールのバージョンなど)
GAS初心者になります。
よろしくお願いいたします。
11/5
具体的な画像を追加いたしました。
よろしくお願いいたします。