当单元格是某种颜色时触发电子邮件?
Trigger an email when a cell is a certain colour?
我对此知之甚少。太少了,我什至不应该将其称为 "knowledge"
这就是我想要做的:
我有一列日期指的是发送日期。如果日期已过,单元格变为红色 (#a33838)。如果该列中的单元格变为红色,我想发送一封电子邮件,以便我知道它尚未发送,需要做。
我还希望电子邮件包含该单元格所在行的信息
我一直在浏览论坛,我想我需要这两个不同帖子的混合:
Trigger an email when a cell has certain values
如果有人知道这样做的方法,那真是救命稻草!
非常感谢。
此代码将帮助您满足您的需要
var EMAIL_ADDRESS = "email@domain";
var SUBJECT = "Passed dates";
var message = "";
function alertDate() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); // get the sheet where values are
var date_col = sheet.getRange(1, 1, sheet.getLastRow()); // get the column with the dates
var dates = date_col.getValues();
var row = 0;
for(var i = 0; i < dates.length; i++){ // iterate over all dates
if( dates[i] < Utilities.formatDate(new Date(), "GMT", "MM/dd/yyyy")){ // check if date already passed
date_col.getCell(i + 1, 1).setBackground("#A33838"); // change cell´s color
row = i + 1;
message += "This date " + dates[i] + " on row " + row.toString() + " has already passed\n"; // build message to send
}
}
MailApp.sendEmail(EMAIL_ADDRESS, SUBJECT, message); // send email
}
通知:
在我的示例中,我使用格式 "MM/dd/yyyy" 作为日期,所以如果您使用另一个格式sheet 中的格式,您需要更改此格式:
Utilities.formatDate(new Date(), "GMT", "MM/dd/yyyy")
我对此知之甚少。太少了,我什至不应该将其称为 "knowledge"
这就是我想要做的: 我有一列日期指的是发送日期。如果日期已过,单元格变为红色 (#a33838)。如果该列中的单元格变为红色,我想发送一封电子邮件,以便我知道它尚未发送,需要做。 我还希望电子邮件包含该单元格所在行的信息
我一直在浏览论坛,我想我需要这两个不同帖子的混合:
Trigger an email when a cell has certain values
如果有人知道这样做的方法,那真是救命稻草! 非常感谢。
此代码将帮助您满足您的需要
var EMAIL_ADDRESS = "email@domain";
var SUBJECT = "Passed dates";
var message = "";
function alertDate() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); // get the sheet where values are
var date_col = sheet.getRange(1, 1, sheet.getLastRow()); // get the column with the dates
var dates = date_col.getValues();
var row = 0;
for(var i = 0; i < dates.length; i++){ // iterate over all dates
if( dates[i] < Utilities.formatDate(new Date(), "GMT", "MM/dd/yyyy")){ // check if date already passed
date_col.getCell(i + 1, 1).setBackground("#A33838"); // change cell´s color
row = i + 1;
message += "This date " + dates[i] + " on row " + row.toString() + " has already passed\n"; // build message to send
}
}
MailApp.sendEmail(EMAIL_ADDRESS, SUBJECT, message); // send email
}
通知:
在我的示例中,我使用格式 "MM/dd/yyyy" 作为日期,所以如果您使用另一个格式sheet 中的格式,您需要更改此格式:
Utilities.formatDate(new Date(), "GMT", "MM/dd/yyyy")