IMPORTRANGEをしているシートに変更があった場合、通知メールを送る
スプレッドシートAシートA’を、別スプレッドシートBのシートB'にIMPORTRANGEしています。シートB'のB列に変更があった場合、メールを自分に送りたいです。
通常の変更通知は、ご認識の通り反映されません。
当方初心者なので、お助けいただけると助かります。
発生している問題・エラーメッセージ
変更されて通知されない
該当のソースコード
function sendNotification() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getActiveSheet(); var cell = ss.getActiveCell().getA1Notation(); var row = sheet.getActiveRange().getRow(); var cellvalue = ss.getActiveCell().getValue().toString(); var to = "AAAA@gmail.com"; var message = '\n\nSignature'; if(cell.indexOf('G')!=-1){ message = sheet.getRange('D'+ sheet.getActiveCell().getRowIndex()).getValue() } var subject = 'Data Updated'; var body = '変更されました; MailApp.sendEmail(to, subject, body);
試したこと
上記の通り
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
importrangeの参照元のスプレッドシートAシートA’に変更があったら通知を飛ばすではダメですかね
複数人が使用しているシートのため、大きく影響が及ぼさないか心配であまり考えていませんでした。
確認を取ってからにはなりますが、「スプレッドシートAのシートAのB列に変更があった場合通知」となったばあい、似たような同様のコードになりますか?
スプレッドシートの編集時でトリガーをセットし、指定したアドレスにメールを飛ばすという部分は一緒です。質問文のコードの message の辺りはどこで使うのかよくわかりませんが。
もしくは単に通知を飛ばすだけならGASじゃなくてスプレッドシートの通知ルール機能でも良いと思います。
回答1件
あなたの回答
tips
プレビュー