If statement 如果函数-谷歌脚本
我正在努力让我的脚本运行IF函数。基本上,我希望基于特定的单元格内容运行脚本 我希望基于此运行IF函数,并编写了以下代码:If statement 如果函数-谷歌脚本,if-statement,google-apps-script,If Statement,Google Apps Script,我正在努力让我的脚本运行IF函数。基本上,我希望基于特定的单元格内容运行脚本 我希望基于此运行IF函数,并编写了以下代码: function sendemail () { var ss = SpreadsheetApp.getActiveSpreadsheet(); var s = SpreadsheetApp.getActiveSheet(); var targetSheet = ss.getSheetByName("Response"); var vCodes = ss.g
function sendemail () {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = SpreadsheetApp.getActiveSheet();
var targetSheet = ss.getSheetByName("Response");
var vCodes = ss.getSheetByName("Codes")
var vResults = targetSheet.getRange("E2").getValues();
var emailAddresses = targetSheet.getRange("B2").getValues()
var dataRange = vCodes.getRange(1, 1, vResults, 1).getValues();
var subject = "Here are your Wi-Fi Codes!";
var vLength = vCodes.getRange("C2").getValues();
if (vLength == "24 hours"){
MailApp.sendEmail(emailAddresses, subject, dataRange);
targetSheet.deleteRows(2);
vCodes.deleteRows(1,vResults);
}
}
如果C2中的值为“24小时”,我希望它发送一封电子邮件。当我运行脚本时,没有错误,但它不会发送任何电子邮件,因为IF函数显然没有正确运行
如果我编辑代码说:
if (vLength == "")
然后电子邮件发送。它似乎不承认“24小时”是可以查找的有效数据
- 有人能看出我做错了什么吗
getValues()
,并且您可能知道,即使将单个单元格定义为范围,此方法也始终返回数组数组
您有两种选择:
getValue()
获取单元格的字符串内容getValues()[0][0]
获取此数组的第一个(也是唯一的)元素vResults
,电子邮件地址
和vLength
)
还要注意确保
vResults
是一个数字,因为您使用它来定义范围。。。您可以使用Number(vResults)
作为一种安全措施。那么,该代码怎么会不符合您的要求呢?你有错误吗?请编辑您的问题以表明此点。已编辑!希望它现在更有意义调试它,看看为什么它没有进入If。你有数据,我们没有。正如我说的,没有错误,所以调试没有任何作用。我不认为你需要数据来帮助我,如果我需要的话,我会把它放在这里。有两个选项卡,一个称为“响应”,另一个称为“代码”。在“代码”表中,我希望在C2单元显示“24小时”时发送一封电子邮件