[英]Google script: How to hide a row if a cell contains a date 10 days older than today's date
[英]How can I trigger Google Spreadsheets script if a specific cell contains a value greater than, say, 10
因此,我有一个可以启动电子邮件的脚本,并且我希望在特定单元格(A5)的值超过10时运行它。这是脚本:
function onEdit() {
var sheet = SpreadsheetApp.getActiveSheet();
var rownum = 1; // #of rows
var rowstart = 2; // where to start row
// get range of cell
// column 1 = email, column 2 is first name
var dataRange = sheet.getRange(rowstart, 1, rownum, 2)
var data = dataRange.getValues()
for (i in data) {
if(sheet.getRange(5,1).getValue()>10){ //change row and column in get range to match what you need
var row = data[i];
var emailadr = row[0]; // data select
var msgcontent = "Hey " + row[1] + ",\n Just:)chilling \n Sent from my email"; // body
var sbjt = "You have mail!"; //subject
MailApp.sendEmail(emailadr, sbjt, msgcontent);}
}
}
在当前项目的触发器下,我有以下内容:
运行:onEdit
事件:从电子表格开始编辑
现在,当我将单元格“ A5”设置为“ 21”时,脚本不会运行。 怎么了 我似乎无法弄清楚。 谢谢。
使用记录器表明它确实起作用。 您可以在下面的示例中看到。 您可能想尝试使用基于时间的触发器,并将其设置为检查每x的时间量并发送电子邮件。 Google可能不允许sendemail运行“ onedit”
function onEdit() { var sheet = SpreadsheetApp.getActiveSheet(); var rownum = 1; // #of rows var rowstart = 2; // where to start row // get range of cell // column 1 = email, column 2 is first name var dataRange = sheet.getRange(rowstart, 1, rownum, 2) var data = dataRange.getValues() for (i in data) { if(sheet.getRange(5,1).getValue()>10){ //change row and column in get range to match what you need var row = data[i]; Logger.log("Yes it is larger than 10"); // var emailadr = row[0]; // data select // var msgcontent = "Hey " + row[1] + ",\\n Just:)chilling \\n Sent from my email"; // body // var sbjt = "You have mail!"; //subject // MailApp.sendEmail(emailadr, sbjt, msgcontent); } } }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.