尝试创建一个脚本,如果提交者回答为false,则在表单提交时会向提交者发送电子邮件 [英] Trying to create a script that on form submit sends an email to the submitter if they answered false

查看:42
本文介绍了尝试创建一个脚本,如果提交者回答为false,则在表单提交时会向提交者发送电子邮件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在寻找表单提交,如果他们将任何问题填写为假,则将电子邮件发送给提交者,但是脚本会将电子邮件也发送给也输入全部为true的任何提交者.我知道if脚本可以在另一个项目中使用数字时使用,但是当我将问题更改为true时,它似乎已经破坏了if语句.我还知道脚本的其余部分可以正常工作,因为在我添加"if(certification =='FALSE'){"之前,该脚本可以正常工作.线.

I'm looking on form submit to send an email to the submitter if they filled any of the questions as false, but the script is sending emails to any submitter who entered all true as well. I know the if script works with numbers as I used it in another project but when I changed the question to true false it seems to have broken the if statement. I also know the rest of the script works because it worked before I added the "if (certification == 'FALSE') {" line.

var EMAIL_SENT = 'EMAIL_SENT';
var FALSE = 'FALSE';

 
function sendEmails2() {

 
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2;
  var numRows = 20;
  var dataRange = sheet.getRange(startRow, 1, numRows, 20);
  var data = dataRange.getValues();
  for (var i = 0; i < data.length; ++i) {
    var row = data[i];
    var emailAddress = row[4];
    var message = 'Test'
    var emailSent = row[9];
    var certification = row[5]
    if (certification == 'FALSE') {
    if (emailSent !== EMAIL_SENT) {
      var subject = 'Self-Certification Alert';
      MailApp.sendEmail(emailAddress, subject, message);
      sheet.getRange(startRow + i, 10).setValue(EMAIL_SENT);
      SpreadsheetApp.flush();  
    }
  }
}
}

推荐答案

我最终将其更改为以下代码,并使其正常工作.

I ended up changing it to the following code and got it to work.

enter code here
var EMAIL_SENT = 'EMAIL_SENT';
var TRUE = 'true';


function sendEmails2() {


 var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2;
var numRows = 20;
var dataRange = sheet.getRange(startRow, 1, numRows, 20);
var data = dataRange.getValues();
for (var i = 0; i < data.length; ++i) {
var row = data[i];
var emailAddress = row[4];
var message = 'Test'
var emailSent = row[9];
var certification = row[5]
if (certification !== true) {
if (emailSent !== EMAIL_SENT) {
  var subject = 'Self-Certification Alert';
  MailApp.sendEmail(emailAddress, subject, message);
  sheet.getRange(startRow + i, 10).setValue(EMAIL_SENT);
  SpreadsheetApp.flush();  
  }
  }
}
}

这篇关于尝试创建一个脚本,如果提交者回答为false,则在表单提交时会向提交者发送电子邮件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆