在以下腳本中,我必須手動插入電子郵件地址。我寧愿從作業表中獲取串列,以便能夠在不編輯腳本的情況下對其進行更新。如何從作業表 (Sheet!A2:A) 中檢索電子郵件地址串列?
function sendReport() {
EMAIL = 'email'
URL = 'url'
'/export?'
'format=pdf'
'&size=A4'
'&gid=id'
'&scale=4'
'&portrait=true';
SpreadsheetApp.getActive();
var response = UrlFetchApp.fetch(URL, {
headers: {
'Authorization': 'Bearer ' ScriptApp.getOAuthToken()
}
});
var message = {
to: EMAIL,
subject: "subject",
body: "body",
attachments: [response.getBlob().setName('file.pdf')]
}
MailApp.sendEmail(message);
}
uj5u.com熱心網友回復:
您期望的腳本如下嗎?
修改后的腳本:
function sendReport() {
URL = 'url'
'/export?'
'format=pdf'
'&size=A4'
'&gid=id'
'&scale=4'
'&portrait=true';
var response = UrlFetchApp.fetch(URL, {
headers: {
'Authorization': 'Bearer ' ScriptApp.getOAuthToken()
}
});
// Retrieve values from Spreadsheet.
var sheet = SpreadsheetApp.getActiveSheet();
var values = sheet.getRange("A2:A" sheet.getLastRow()).getDisplayValues();
// Send the email using the email addresses.
values.forEach(([email]) => {
if (email) {
var message = {
to: email,
subject: "subject",
body: "body",
attachments: [response.getBlob().setName('file.pdf')]
}
MailApp.sendEmail(message);
}
});
}
- 如果要設定具體的sheet,請修改
var sheet = SpreadsheetApp.getActiveSheet();為var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");.
參考:
- forEach()
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/473322.html
上一篇:如何添加三個陣列中的值?
