Google apps script 谷歌循环脚本,如果单元格为0,则从列表发送电子邮件
列B是我正在测试的值,如果列B的值为0,则列C是我要向其发送电子邮件的电子邮件。该函数运行,但不发送电子邮件Google apps script 谷歌循环脚本,如果单元格为0,则从列表发送电子邮件,google-apps-script,google-sheets,Google Apps Script,Google Sheets,列B是我正在测试的值,如果列B的值为0,则列C是我要向其发送电子邮件的电子邮件。该函数运行,但不发送电子邮件 function email() { var ss = SpreadsheetApp.getActive().getSheetByName('email'); var range = ss.getRange('B1:B29'); var email = ss.getRange('C1:C29'); for (var i = 0; i < range.length;
function email() {
var ss = SpreadsheetApp.getActive().getSheetByName('email');
var range = ss.getRange('B1:B29');
var email = ss.getRange('C1:C29');
for (var i = 0; i < range.length; i++){
var recipient = email[i]
var x = range[i]
if(x == 0){
MailApp.sendEmail(recipient,
"Fill in Schedule for next Week",
"Your Schedule for next week isn't filled out. Please fill this in by Sunday\n https://docs.google.com/spreadsheets/d/1Yo8neePMv5rB-JRvgFOL6SKo83jv-FBoNuldcSynsUY/edit#gid=0 \n(Automated Message)",
{noReply:true});
}
}
}
功能电子邮件(){
var ss=SpreadsheetApp.getActive().getSheetByName('email');
var range=ss.getRange('B1:B29');
var email=ss.getRange('C1:C29');
对于(变量i=0;i
我想出来了。我只需要使用.getValues()将变量转换为正确的数组
var range = ss.getRange('B1:B29').getValues();
var email = ss.getRange('C1:C29').getValues();
嗯,
range
是类range
的对象,根据您的代码,它跨越了J列中的多行。也许您想迭代该范围内的数据?我建议您将所需的数据从工作表导入单个JavaScript数组
,然后迭代该2D数组。执行循环的错误方法是为需要处理的每一行调用一次getValue()
。我建议您查看API参考,特别注意表
和范围
类:我看不出您的问题是什么。