[英]Send email if cells' value is below certain value
我絕對是新手,為了做個工作腳本而竭盡全力。 我需要每天檢查員工的認證,如果過期,請重新認證。 這是一個帶有隨機數據的“測試”電子表格: https : //docs.google.com/spreadsheets/d/1vJ8ms5ZLqmnv4N1upNHD4SRfgIgIbEAbandAndvUNy-s9S4/edit?usp=sharing
它列出了在我部門工作的人員,以及其證件編號和其證書有效的天數。 原始工作表采用了另一個電子表格中的天數值,但不應對此產生影響(我認為?)。
我要實現的目標是編寫一個檢查C3:G24中所有數字的腳本。 如果此范圍內的任何單元格的值都小於15,則應從同一行中提取其徽章編號和名稱,以及其證書適用的“天”,並發送包含所有這些數據的電子郵件。
例如
主題:證書即將過期
電子郵件內容:具有Badge#(A列中的#)的員工(B列中的名稱)證書的證書將在X天內過期(其中X =范圍C3:G24中的數字)。
到目前為止,我最好的嘗試是至少使它在編輯時發送任何電子郵件,但慘無人意地嘗試改編任何在線發現的腳本。 這是至少可以發送電子郵件的方法,但是后來我做了一些破解工作:
function checkValue()
{
var ss = SpreadsheetApp.getActive();//not sure if needed, the spreadsheet eventually doesn't have to be open/active
var sheet = ss.getSheetByName("Certifications");
//not sure if this is ok
var valueToCheck = sheet.getRange("C3:G24").getValue();
//Here I'd like to change the "days" based on needs
if(valueToCheck < 15)
{
MailApp.sendEmail("email@company.com","Certifications","Your employee certification will expire soon" + valueToCheck+ ".");
}
}
有人可以幫我指引正確的方向嗎?
這是我會做的:
function checkValue()
{
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Certifications");
var valueToCheck = sheet.getDataRange().getValues();
var resultValues = [];
valueToCheck = valueToCheck.filter(function(element){
var val = 0
if (parseInt(element[2]) < 15)
{
resultValues.push({col: "Cert1", value: element[2]})
return (true);
}
else if (parseInt(element[3]) < 15)
{
resultValues.push({col: "Cert2", value: element[3]})
return (true);
}
else if (parseInt(element[4]) < 15)
{
resultValues.push({col: "Cert3", value: element[4]})
return (true);
}
else if (parseInt(element[5]) < 15)
{
resultValues.push({col: "Cert4", value: element[5]})
return (true);
}
else if (parseInt(element[6]) < 15)
{
resultValues.push({col: "Cert5", value: element[6]})
return (true);
}
})
for(var i = 0; i < valueToCheck.length; i++)
{
MailApp.sendEmail("mail@company.com","Certifications","your employee's " + valueToCheck[i][1] + "with badge " + valueToCheck[i][0] + " certification will expire in " + resultValues[i].value + " days (column " + resultValues[i].col + ").");
}
}
getValues()
函數檢索數據。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.