Я изменил кодировку, так что теперь я могу отправить лист распространения на адрес электронной почты. Теперь я ищу возможность выбрать определенный диапазон, например (A1: J23), и отправить только этот диапазон на мой почтовый адрес. любые идеи, что я делаю неправильно здесь? Всегда получать предупреждение: TypeError: Не удается найти функцию getSheets в объекте Range. (Строка 8, файлgoogle sheet to pdf mailto
function onOpen() {
var submenu = [{name:"einreichen", functionName:"sendEmailWithPdfAttach"}];
SpreadsheetApp.getActiveSpreadsheet().addMenu('E-mail senden', submenu);
}
var range = 'A1:J23'
var source = SpreadsheetApp.getActiveSpreadsheet().getRange(range);
var subject = source.getSheets()[0].getRange('B3').getValue();
var body = source.getSheets()[0].getRange('F3').getValue();
var sheetNum = 0; // first sheet(tab) is zero, second sheet is 1, etc..
function sendEmailWithPdfAttach() {
var source = SpreadsheetApp.getActiveSpreadsheet();
var thema = source.getSheets()[0].getRange('D3').getValue(); //
var mailTo = source.getSheets()[0].getRange('E3').getValue(); // 'D46' cell which consists an emailaddress.
var name = source.getSheets()[0].getRange('C3').getValue();
var sheets = source.getSheets();
sheets.forEach(function (s, i) {
if (i !== sheetNum) s.hideSheet();
});
var url = Drive.Files.get(source.getId())
.exportLinks['application/pdf'];
url = url + '&size=letter' + //paper size
'&portrait=false' + //orientation, false for landscape
'&fitw=true' + //fit to width, false for actual size
'&sheetnames=true&printtitle=false&pagenumbers=false' + //hide optional// was false
'&gridlines=false' + //false = hide gridlines
'&fzr=false'; //do not repeat row headers (frozen rows) on each page
var token = ScriptApp.getOAuthToken();
var response = UrlFetchApp.fetch(url, {
headers: {
'Authorization': 'Bearer ' + token
}
});
MailApp.sendEmail(mailTo, subject, body, {
attachments: [response.getBlob().setName(name)]
});
sheets.forEach(function (s) {
s.showSheet();
})
}
Какой язык? Какая платформа? –
google sheet - скрипт google java, Mac - Chrome – theduke99
.getSheets() нужен объект электронной таблицы. В данный момент «источник» (строка 7) является объектом диапазона. Не нужно, почему вам нужны «глобальные» переменные любым способом ..: -/ – JPV