簡體   English   中英

Google 表格將范圍作為電子郵件發送

[英]Google Sheets Send Range as Email

我正在嘗試在電子郵件中將特定范圍作為 Pdf 附件或 HTML 表格發送,單元格 a2 將包含電子郵件並且消息應該在 C7:I25 范圍內,這就是我到目前為止所擁有的,我是收到錯誤消息,找不到收件人,您能幫幫我嗎?

function correoe() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2;  
  var numRows = 2;   
  var dataRange = sheet.getRange(startRow, 1, numRows, 5)
  var data = dataRange.getValues();
  for (i in data) {
    var row = data[i];
    var emailAddress = row[0];  
    var message = sheet.getRange ("C7:I25");
    var subject = "Su Cotizacion";
    MailApp.sendEmail(emailAddress, subject, message);
  }
}

您需要一些函數來從單元格中獲取 html 文本。

var data = sheet.getRange ("C7:I25").getValues();
var message = getTable(data);

函數getTable可能如下所示:

  function getTable(data) {
    var result = ["<table border=1'>"];
    var ll = data[0].length;
    var row = 0;
    for(var i = 0, l = data.length; i < l; i++) {
        row = data[i];
        result.push("<tr>");
        for(var ii = 0; ii < ll; ii++){
            result.push('<td>' + row[ii] + '</td>');
        }
        result.push("</tr>");
    }
    result.push("</table>");
    return result.join('\n');
  }

測試

虛擬數據

[["row 1, cell 1", "row 1, cell 2"], 
 ["row 2, cell 1", "row 2, cell 2"]];

虛擬 HTML 文本輸出

<table border=1'>
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td>row 2, cell 2</td>
</tr>
</table

用法

需要使用此語法發送電子郵件:

 MailApp.sendEmail({
     to: emailAddress,
     subject: subject,
     htmlBody: message
 });

暫無
暫無

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

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