1

我設置了Google表單來記錄用戶報告的有關我們維護的數據庫的錯誤。這些回覆將放入Google表格中,並記錄用戶的電子郵件。從本質上講,我想在Google表格中擁有一個狀態字段 - 當它設置爲「完成」(與響應位於同一行)時,我想要將電子郵件自動發送到提交響應的用戶,讓他們知道他們的響應狀態是完整的。有點像許多公司使用的票務系統(但我們沒有很多帶寬來設置它,所以我們正在尋找簡單/免費的東西)。發送電子郵件使用特定值編輯單元格時

+0

手動鍵入「完成」狀態嗎?我假設它沒有設置代碼。 – 2015-02-05 19:42:22

+0

是的,Complete將由工作表的用戶輸入。 – Daniel 2015-02-06 19:29:27

回答

0

創建一個onEdit()函數,在編輯時捕獲單元格值並運行代碼。

function onEdit(e){ 
    // Capture the cells value after it is edited 
    var valCell = e.value; 
    Logger.log('The cell value is: ' + valCell); 

    if (valCell === "Complete") { 
    //Get the range of the cell 
    var theRange = e.range; 

    //Get the row of the range 
    var theRowOfEdit = theRange.getRow(); 

    // Returns the cell with email 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet = ss.getSheets()[0]; 
    var cell = sheet.getRange("B" + theRowOfEdit.toString()); 

    //Get the user email 
    var userEmail = cell.getValue(); 

    //Send the email 
    } 
} 

這不是您需要的完整代碼。但是,設置這個代碼;測試它,調試它,如果你有一個特定的問題,請發佈另一個問題,其中包含錯誤消息和不工作的代碼行。

在代碼編輯器和/或Logger.log()語句中使用debug來調試代碼。

1

您無法在onEdit觸發器內發送電子郵件。因此,您必須將編輯保存在某處,可能位於UserProperties內部,並且具有基於時間的觸發器,可以每分鐘將此值發送到您的電子郵件。

參見:Email Notifications in Google Spreadsheets

谷歌電子表格支持行編輯(工具 - 通知規則)的電子郵件通知,但上次我嘗試它時,它從來沒有工作。

+0

您不能通過簡單的onEdit觸發器發送電子郵件,但是您可以通過_installable編輯trigger_來完成。請參閱[此答案](http://stackoverflow.com/a/27277585/1677912)爲例。 – Mogsdad 2016-04-05 19:54:45

相關問題