Автоответчик по электронной почте ответ Google - PullRequest
0 голосов
/ 06 апреля 2020

Может ли кто-нибудь помочь с помощью скрипта приложения Google, чтобы вызвать автоматическое электронное письмо соискателям, которые провалили тест - оценка ниже 130 в столбце A на листах Google?

Заранее спасибо за помощь!

Ответ по результатам теста

Ответы [ 2 ]

0 голосов
/ 06 апреля 2020

Эта функция обрабатывает полные данные электронной таблицы от первой строки до последней строки и отправляет электронные письма с уведомлениями об ошибках, где оценка меньше 130 ...

function notifyFailedCandidates () 
{
  //Get the active sheet from the current spreadsheet
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();

  //Get all the rows from the spreadsheet
  var rangeData = sheet.getDataRange();
  var lastColumn = rangeData.getLastColumn();
  var lastRow = rangeData.getLastRow();
  var searchRange = sheet.getRange(2,1, lastRow-1, lastColumn);
  var rows = searchRange.getValues();

  //loop through each of the rows
  for (var rowNumber in rows)
  {
    //Get each of the values from the row
    var quizScore = rows[rowNumber][0];
    var firstName = rows[rowNumber][1];
    var lastName = rows[rowNumber][2];
    var email = rows[rowNumber][3];

    //Send a failure notification if the score is less than 130
    if (parseInt (quizScore) < 130)
    {
      MailApp.sendEmail
      (
        email, //candidate email address
        'Notification of test failure', //Subject of failure notification email

        //Contents of failure notification email
        'Hi ' + firstName + "\n\n" + 
        'This email is to let you know that unfortunately you failed the test, with a score of ' + quizScore + ' / 170' + "\n\n" +
        'Better luck next time'
      );
    }
  }
}
0 голосов
/ 06 апреля 2020

Хотите ли вы, чтобы по почте go автоматически, как только форма заполнена? В этом случае вы можете использовать триггер onFormSubmit для автоматической отправки ему почты.

Если вы обрабатываете ответы и затем создаете лист результатов, вы можете отправлять почту из листа результатов, обрабатывая каждую строку. в листе. Вы можете легко найти множество примеров того, как отправить письмо с листа на основе значения в столбце.

Я прилагаю аналогичный код, который автоматически отправляет ответ пользователю, как только он отправляет форму. Я сохраняю его адрес электронной почты (на основе номера сотрудника) и отправляю ему некоторые данные (на основе номера его сотрудника), как только его запрашивает. Он работает как «портал самопомощи сотрудников».


function onFormSumbit(e) {
  var emp = e.source.getActiveSheet().getRange(e.range.rowStart,2).getValue();
  var lvss = SpreadsheetApp.openById("xxxx"); // blanks https://docs.google.com/spreadsheets/d/1kjOjhH0dvz4j3FsB_1UR5astpy8-ZxszNI4BZo4XJP0/edit#gid=0
  SpreadsheetApp.setActiveSpreadsheet(lvss);
  var lvsht = lvss.getSheetByName("Blanks");
  var lvlr = lvsht.getLastRow();
  var vA =lvsht.getRange("A:L").getValues();
  var html="<style>th,td{border:1px solid black;}</style><table>";
  html+='<tr>';
  for(var i=0;i< 4 ;i++) {//make title
       html+=Utilities.formatString('<th>%s</th>',vA[0][i]);
     }
  html+='</tr>';
  for (i=1;i<lvlr;i++){
    if (vA[i][0]==emp){
      html+='<tr>';
      for (j=0;j<4;j++) {
         if ( j==2 ){
            vA[i][j]=Utilities.formatDate(vA[i][j],"GMT+05:30", "dd-MM-yy");
          }//if date
          html+=Utilities.formatString('<td>%s</td>',vA[i][j]);
      }//for emp
      html+='</tr>';
    }//if
  }//for
  html+='</table><br>';
  var empss = SpreadsheetApp.openById("xxxx"); // emp master 
  SpreadsheetApp.setActiveSpreadsheet(empss);
  var empsht = empss.getSheetByName("Emp");
  var emplr = empsht.getLastRow();
  var empvals =empsht.getRange("A:H").getValues();
  for (i=1;i<emplr;i++){
    if (empvals[i][0]==emp){
      var em1=empvals[i][7];
      var name=empvals[i][1]
      break;
    }//if
  }//for
  var subject="Your punch blanks "+name;
  if (em1=="") {} else {
  //MailApp.sendEmail(em1, subject, html);}
    MailApp.sendEmail({
      to: em1,
      subject: subject,
      htmlBody: html
    });
  }
}
//
//



Надеюсь, это поможет !!

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