У меня есть сценарий, который должен отправить определенную вкладку в моей электронной таблице, все работает нормально. Проблема с прикрепленным файлом .xls, поскольку он не содержит данных из вкладки. он содержит только текст со страницы входа в Google:
«Одна учетная запись. Все в Google. Войдите, чтобы продолжить работу с Таблицами. Введите свой адрес электронной почты. Найдите мою учетную запись.
Войти с другой учетной записью Создать учетную запись
Одна учетная запись Google для всего Google "
Я пробовал внедрить некоторые функции в свой код, но не смог решить проблему. Я полагаю, ему нужно где-нибудь проверить мои учетные данные?
Я добавил строку var options = {'muteHttpExceptions': true}, чтобы обойти ошибку 404. Это основная причина?
function sendEmail() {
var ssID = SpreadsheetApp.getActiveSpreadsheet().getId();
var sheetName = SpreadsheetApp.getActiveSpreadsheet().getName();
var email = Session.getUser().getEmail();
var email_ID1 = "[email protected]";
var subject = "Quotes";
var body = "This is my message";
var options = {'muteHttpExceptions': true}
var shID = getSheetID("mail_Data")
var url = "https://docs.google.com/spreadsheets/d/"+ ssID + "/export?format=xlsx&id="+ssID+"&gid="+shID;
var result = UrlFetchApp.fetch(url, options);
var contents = result.getContent();
MailApp.sendEmail(email_ID1,subject ,body, {attachments:
[{fileName:sheetName+".xls", content:contents,
mimeType:"application//xls"}]});
};
function getSheetID(mail_Data){
var ss = SpreadsheetApp.getActive().getSheetByName(mail_Data)
var sheetID = ss.getSheetId().toString()
return sheetID
}
Ожидается, что сценарий проверит мои учетные данные перед возвратом листа.