2017-06-05 73 views
0

我嘗試了許多不同的代碼,當我的Google工作表中F列的值爲「是」時發送電子郵件提醒。我從下拉菜單中選擇這個值。但沒有電子郵件發送。我也嘗試過不同的電子郵件。什麼都沒有這是我現在正在嘗試的代碼。發送自動發送電子郵件給特定值的下拉列

function Email(e) { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var s = ss.getSheetByName("FY"); 
    var row = s.getActiveRange().getRow(); 
    var status = s.getRange(row,6).getValue(); 
    var subject = 'subject'; var message = 'body'; 
    var email =""; 
    if (e.value === "Yes" && e.range.getColumn() === 6) { 
    GmailApp.sendEmail(email,subject,message); 
    } 
}; 

回答

0

您需要使用已安裝的觸發器see here才能在編輯腳本上使用此觸發器。

轉到'編輯' - >'當前項目的觸發'並設置一個觸發器,如下所示。

onEdit trigger

代碼:

function onEdit(e){ 
    var getRange = e.range; 
    var getValue = getRange.getValue(); 
    var getCol = getRange.getColumn(); 

    if(getValue == "Yes" && getCol == 6){ 
     var subject = 'subject'; 
     var message = 'body'; 
     var email = "---------------"; 
    MailApp.sendEmail(email, subject, message); 
    } 
} 
+0

感謝您輸入詹姆斯!但是,即使在設置觸發器並更改代碼後,它也不會發送任何電子郵件。我認爲它根本不發送任何電子郵件。錯誤是「Can not read property range」from undefined。(第2行,文件「Code」)「 – Diksha

+0

您是否使用腳本編輯器中的運行或調試器按鈕來測試代碼?使用onEdit(e)觸發器時,參數e僅在編輯電子表格時接收信息,因此測試腳本的唯一方法是在表格中鍵入/刪除某些內容。 –

+0

我通過編輯電子表格來測試它。但是當我這樣做時沒有任何反應。 – Diksha