1

当单个单元格或单元格 D28:D33 和 L28:L33 显示“完成”时,我正在尝试创建电子邮件通知。

以下是我能够提取的一些代码,但它只会对行或列的任何更改进行电子邮件通知。我需要此代码才能仅对特定单元格执行此操作。

所以我把这段代码放在一起,但当我点击播放时,它似乎通过了,但每当编辑电子表格上的任何内容时,我仍然会收到电子邮件。

    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 range_bill_com = sheet.getRange("D28" || "D29" || "D30" || "D31" || "D32" || "D33");
      var test = 0;
      if (range_bill_com.getValue() == "Complete" && test == 0){
         var recipients = "username@email.com";
         var message = '';
         var subject = 'Update has been done to '+sheet.getName();
         var body = sheet.getName() + ' has been updated. Visit link to view changes ' + ss.getUrl() + ' changes have been made to row: «' + cell + '»';
         MailApp.sendEmail(recipients, subject, body);
      test = 1;
      }
      };

我还尝试在发送电子邮件后添加一个值,该值从 test = 0 更改为 test = 1,因此它不会再次重新发送电子邮件。

4

0 回答 0