![](/img/trans.png)
[英]Send email from cell value google sheet, with other columns in email
[英]How to send an email when google sheet cell is blank for two columns only?
我試圖讓腳本自動使用觸發器在“U”和“V”列中的單元格為空白時向我發送電子郵件。
function sendEmails() {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2; // Start at second row because the first row contains the data labels
var lastRow = sheet.getLastRow()
var lastCol = sheet.getLastColumn()
// Fetch the range of cells, in this case A2:T
// Column B, row[2] = Email Address, Column C, row[1] = Name
var dataRange = sheet.getRange(startRow, 1, lastRow, lastCol)
// Fetch values for each row in the Range.
var data = dataRange.getValues();
for (var i = 0; i < data.length-1; ++i) {
var row = data[i];
var emailAddress = 'email@address.com'; //
var message = "Hi " + row[2] + ",\n Could you please fill out the form:" + "\n 'insert website here'" + "\n Thank you"; // Assemble the body text
var cell = row[19]; // Last column
if (cell == " ") {
var subject = "Sending emails from a Spreadsheet";
MailApp.sendEmail(emailAddress, subject, message);
}
}
}
我讓代碼工作一次,但由於某種原因它突然停止工作。
" "
是一個空格用作空格,但我認為您認為的空格可能是""
。從你的回復,我可以理解如上。 如果我的理解是正確的,這個答案怎么樣? 請將此視為幾種可能的答案之一。
這個修改后的腳本的流程如下。
sample
的功能就運行起來了。MailApp.sendEmail()
運行。 使用前請先將OnSubmit事件觸發器安裝到sample
函數中作為可安裝觸發器。 並將電子郵件地址設置為var emailAddress = 'email@address.com';
.
function sample(e) { var blank = ""; var range = e.range; var sheet = range.getSheet(); var editRow = range.getRow(); var row = sheet.getRange(editRow, 1, 1, 22).getValues()[0]; if (row.splice(-2).every(function(e) {return e == blank})) { var emailAddress = 'email@address.com'; var message = "Hi " + row[2] + ",\\n Could you please fill out the form:" + "\\n 'insert website here'" + "\\n Thank you"; var subject = "Sending emails from a Spreadsheet"; MailApp.sendEmail(emailAddress, subject, message); } }
" "
這樣的空格作為空格,請修改var blank = "";
到var blank = " ";
.PIC
。我可以理解你的附加問題。 為此,請進行如下修改。
function sample(e) { var blank = ""; var range = e.range; // var sheet = range.getSheet(); // removed var sheetName = "PIC"; // Added var sheet = e.source.getSheetByName(sheetName); // Added var editRow = range.getRow(); var row = sheet.getRange(editRow, 1, 1, 22).getValues()[0]; if (row.splice(-2).every(function(e) {return e == blank})) { var emailAddress = 'email@address.com'; var message = "Hi " + row[2] + ",\\n Could you please fill out the form:" + "\\n 'insert website here'" + "\\n Thank you"; var subject = "Sending emails from a Spreadsheet"; MailApp.sendEmail(emailAddress, subject, message); } }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.