Как я могу добавить сравнение другого столбца к существующему сравнению? - PullRequest
0 голосов
/ 16 мая 2019

Как добавить сравнение со значением в столбце A, чтобы:

, если значение в столбце A было test1, я отправлю электронное письмо по адресу test1 @ mail.com,
, если значение равно test2плохо отправлю письмо на tes2@mail.com и т. д.

function sendEmailAlert() {

    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var data = ss.getActiveSheet().getActiveCell().getA1Notation();
    var sheetname = ss.getActiveSheet().getName();
    var getColumn = ss.getActiveSheet().getActiveRange().getColumn();
    var user = Session.getActiveUser().getEmail();
    var Toemail = 'randomemail@mail.com';
    var subject = 'New Entry -' + ss.getName();
    var body = 'random text';

    if(Number(ss.getActiveCell().getValue()!=-1.23456789) && getColumn ==2) {

         MailApp.sendEmail(Toemail,subject,body); 
    }
};

If I change value in column B, and the value in column A is `test1` I'll send email to test1@mail.com.  If I change column B and value in column A is `test2` I'll send email to test2mail.com

1 Ответ

0 голосов
/ 16 мая 2019

Вы можете использовать функцию getCell(row, column), доступную для объекта Range, чтобы получить содержимое ячейки слева от текущей активной ячейки (при условии, что первый столбец является адресом электронной почты, а второй столбец содержит ячейкибыть измененным).Следующий фрагмент кода выбирает адрес электронной почты получателя как таковой, отправляя в качестве тела значение ячейки, которая была изменена:

function sendEmail() {

  // Spreadsheet info
  var ss = SpreadsheetApp.getActiveSpreadsheet(); // get all sheets
  var sheet = ss.getActiveSheet(); // get current sheet
  var data = sheet.getDataRange(); // get all data in the active sheet
  var sheetname = sheet.getName();

  // Current cell info
  var cell = sheet.getActiveCell();
  var currColumn = cell.getColumn();
  var currRow = cell.getRow();

  // Email setup
  var user = Session.getActiveUser().getEmail();
  var subject = 'New Entry - ' + ss.getName();

  // Do I send an email?
  if(Number(ss.getActiveCell().getValue() != -1.23456789) && currColumn == 2) {
    var toEmail = String(data.getCell(currRow, currColumn - 1).getValue());
    var body = data.getCell(currRow, currColumn).getValue();
    MailApp.sendEmail(toEmail, subject, body);
  }

};

Важной строкой является строка, определяющая toEmail, котораяпросит currColumn - 1.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...