簡體   English   中英

如果Google表單中寫入了特定的值,請發送電子郵件

[英]Send email if certain value is written in Google Forms

我正在使用Gforms,我需要向“朋友”發送電子郵件。當最后提交的表單在“ J”列中具有某個值時,在本例中為“ Roberto”。 這是我的劇本。 但這似乎不起作用,以表格形式提交該值時我沒有收到電子郵件。 我確實設置了觸發器以在提交表單時運行腳本。

function myNotification() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var ranchE = e.range.getRow();
  var Kjota = "J";
  var rangex = Kjota + ranchE;
  var value = ss.getSheetByName("Respuestas de formulario").getRange(rangex).getValue();
  var email = "heregoes@myemail.com";
  if( value == "Roberto" ) {
      MailApp.sendEmail(email, "Test", "Yes is Roberto");
  }
}

要訪問發送到函數的事件信息,您需要包括e作為參數。 請參閱了解事件,以了解傳遞給觸發函數的信息。

例如, e.values是由觸發函數的表單提交的值的數組。 您無需閱讀電子表格-信息是免費提供給您的。

由於它是一個數組,所以e.values從0開始編號。因此,要訪問列J,您需要元素9。(J是電子表格上的第10列。)

如果我們想根據字母來計算列號,可以這樣:

var Kjota = "J";
var colIndex = Kjota.charCodeAt(0) - 'A'.charCodeAt(0);  // colIndex = 9

還有一件事-如果這是您的腳本,並且您希望將電子郵件發送給您,則可以使用會話服務輕松獲取自己的電子郵件。 這也使您的腳本更易於共享。

因此,這就是您所需要的:

function myNotification(e) {
  if( e.values[9] == "Roberto" ) {
      var email = Session.getUser().getEmail();
      MailApp.sendEmail(email, "Test", "Yes is Roberto");
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM