簡體   English   中英

App Script Google Sheet 自動 email 發送 - 無收件人

[英]App Script Google Sheet automatic email send - no recipient

我使用以下功能將自動電子郵件發送到我的谷歌表 email 列表。 我為此創建了一個 html 模板“自動回復”。

在添加一行時為“onChange”設置觸發器后,腳本會觸發,但我收到錯誤:異常:無法發送 email:sendUser 處沒有收件人(自動發送:21:11)

如果我在編輯器中運行腳本,它們可以正常工作,並且 email 會發送出去。 觸發器設置為運行“onChange”,部署的腳本為 web App。

谷歌表如下所示: A 列:email(帶有電子郵件列表) B 列:名稱 列 C:狀態

任何幫助表示贊賞,謝謝

function checkdata() {
  const row = SpreadsheetApp.getActiveSheet().getActiveCell().getRow();
  const data = SpreadsheetApp.getActiveSheet().getRange("sheet1!A2:B").getValues()[0];
  Logger.log(row);
  const user = {
    email: data[0]
    , name: data[1]
    , row: row
  };
  Logger.log(user);
  if (user.status != "sent") {
    sendUser(user);
  }
  Logger.log(row);
}

function sendUser(user) {
  const temp = HtmlService.createTemplateFromFile('autorepsonder');
  temp.user = user;
  const message = temp.evaluate().getContent();
  MailApp.sendEmail({
    to: user.email, 
    subject: 'Confirmation registration', 
    htmlBody: message
  });
  SpreadsheetApp.getActiveSheet().getRange(user.row, 3).setValue('sent');
}

嘗試這個:

function checkdata() {
  const row = SpreadsheetApp.getActiveSheet().getActiveCell().getRow();
  const data = SpreadsheetApp.getActiveSheet().getRange("sheet1!A2:B").getValues()[row - 2];
  Logger.log(row);
  const user = {
    email: data[0]
    , name: data[1]
    , row: row
  };
  Logger.log(user);
  if (user.status != "sent") {
    sendUser(user);
  }
  Logger.log(row);
}

暫無
暫無

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

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