[英]How to send conditional email alert on google sheet?
我正在我的 google 表格上設置電子郵件警報,其中如果一列中的值低於 2,我會在我的郵件中收到電子郵件警報。 我有多個域名,每天檢查域名到期日期非常繁瑣。 我創建了一張表格,在其中列出了域名、注冊商、托管、今天的日期、到期日期、到期剩余天數。 現在我想在“到期剩余天數列”上創建一個警報,以便當剩余天數低於 2 天時,它會向我的電子郵件地址列表發送警報電子郵件。
我已經做的是為一個單元格值收到一封電子郵件,但我想要做的是在整列或列值數量上獲取它。
function CheckSales() {
// Fetch the values
var domainexpireRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("domain list").getRange("F2");
var domainexpire = domainexpireRange.getValues();
// Check domain expiring
if ( domainexpire < 2){
var emailRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Company emails").getRange("B2:B4");
var emailAddress = emailRange.getValues();
// Send Alert Email.
var message = '2019 smtp Domain Expiring in two days. Please check the sheet domain sheet '; // Second column
var subject = '2019 smtp Domain Expiring';
MailApp.sendEmail(emailAddress, subject, message);
}
}
我有一張有多行多列的工作表,我想要做的是檢查 F 列,如果 F 列上的任何值小於 2,則向我的電子郵件地址發送警報電子郵件。 如果我將代碼復制粘貼多次並更改“getRange("F2");”,我的代碼工作正常到 F2,F3,....F100 。 但這不是放置代碼的好方法。 誰能告訴我是否可以編輯一些代碼並得到結果。
我嘗試使用“getRange("F2:F");” & getRange("F2:F54"); 但沒有成功。
謝謝你的幫助。
嘗試使用 for 語句遍歷整個工作表,下面的應該可以工作:
function checkSales() {
// Fetch the values
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheet.getSheetByName("domain list");
var dataRange = sheet.getDataRange();
var data = dataRange.getValues();
// loop through each row starting at row 2
for (var i = 1; i < data.length; i++) {
var domainExpire = data[i][5];
// Check domain expiring
if (domainExpire < 2) {
var emailRange = spreadsheet.getSheetByName("Company emails").getRange("B2:B4");
var emailAddress = emailRange.getValues();
// Send Alert Email.
var message = '2019 smtp Domain Expiring in two days. Please check the sheet domain sheet '; // Second column
var subject = '2019 smtp Domain Expiring';
MailApp.sendEmail(emailAddress, subject, message);
}
}
}
嘗試這個:
function CheckSales() {
var ss=SpreadsheetApp.getActive();
var sh=ss.getSheetByName('domain list');
var domainexpireRange=sh.getRange(1,6,sh.getLastRow()-1,1);
var domainexpire=domainexpireRange.getValues();
for(var i=0;i<domainexpire.length;i++) {
// Check domain expiring
if (domainexpire[i][5]<2){
var emailRange=ss.getSheetByName("Company emails").getRange("B2:B4");
var emailAddress=emailRange.getValues().map(function(r){return r[0];}).join(',');
// Send Alert Email.
var dateString=Utilities.formatDate(new Date(), Session.getScriptTimeZone(), "yyyy");
var message=Utilities.formatString('%s smtp Domain Expiring in two days. Please check the sheet domain sheet.',dateString);
var subject=Utilities.formatString('%s smtp Domain Expiring',dateString);
MailApp.sendEmail(emailAddress, subject, message);
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.