我有一个包含6列的电子表格,前3行是为标题保留的。一旦用户在该行的5个单元格中输入信息,他将执行将发送电子邮件的脚本。第6个单元格用于在发送电子邮件后显示EMAIL_SENT。
我遇到的问题是错误检查,我不希望用户在没有所有五个单元格的情况下发送电子邮件。
function Email() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var range = sheet.getDataRange();
range = range.offset(3, 0, range.getNumRows()-3);
range.getValues().forEach( function( recipient, index, data ){
if (recepient[0] == ""){Browser.msgBox("No data in column A");}
.
.
.
});
}
我希望我可以检查单元格是否等于空白,空白并通知但是这不起作用。
非常感谢您的帮助。 :)
答案 0 :(得分:0)
您是否在Range类中尝试过 isBlank()?
https://developers.google.com/apps-script/reference/spreadsheet/range#isBlank()
答案 1 :(得分:0)
您正在使用的功能有效,但无法调用浏览器服务...
如果您使用Logger.log
替换,则会得到预期的结果。
range.getValues().forEach( function( recipient, index, data ){
if (recipient[0] == ""){Logger.log("Missing data in column A");}
});
恕我直言,这比在我的用户界面中出现很多弹出窗口要方便得多......
代码将在col A
中没有数据时显示警告 range = range.offset(3, 0, range.getNumRows()-3);
var result=false;
range.getValues().forEach( function( recipient, index, data ){
if (recipient[0] == ""){result="Missing data in column A"}
});
if(result){Browser.msgBox(result); return };