下面提到的是我的 ss 鏈接,它有“Sheet1”,其中有資料。每當從下拉串列 (E2) 中選擇電子郵件地址并將復選框選中為真 (F2) 時,A、B 和 C (A1:C) 列中的資料需要發送到所選電子郵件地址。注意:可能有 1 個條目或多個條目可用,需要發送 CHECK 時可用的所有資料。
提前致謝。SS 鏈接:
uj5u.com熱心網友回復:
我相信你的目標如下。
- 您分別在“E2”和“F2”單元格中擁有電子郵件地址和復選框。
- 當復選框被選中時,您想要從“A”到“C”列中檢索電子郵件地址和值,并希望將這些值作為電子郵件發送。
- 您想要將值轉換為 HTML 表。
在這種情況下,下面的示例腳本怎么樣?
示例腳本:
此腳本由安裝的 OnEdit 觸發器運行。所以,
腳本:
function sendEmail() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName('Sheet1');
var emailadd = sheet.getRange('E2').getValue();
var header = sheet.getRange('A1:C1').getValues().flat();
var range = sheet.getRange(2,1, sheet.getLastRow() - 1, 3);
const sr = header[0];
const pName = header[1];
const price = header[2];
var values = range.getDisplayValues();
const html = HtmlService.createTemplateFromFile('email');
html.sr = sr;
html.pName = pName;
html.price = price;
html.values = values;
const test = html.evaluate().getContent();
console.log(test);
MailApp.sendEmail(
emailadd,
"Set Email Subject Here",
"HTML", { htmlBody: test}
);
}
HTML:
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<table>
<thead >
<tr >
<th ><?= sr ?></th><th><?= pName ?></th><th><?= price ?></th>
</tr>
</thead>
<tbody>
<? values.forEach(x => { ?>
<tr >
<td ><?= x[0] ?></td><td><?= x[1] ?></td><td><?= x[2] ?></td>
</tr>
<? }) ?>
</tr>
</tbody>
</table>
</body>
</html>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/490751.html
