Я пытаюсь создать скрипт, который создаст пункт меню в Google Sheets для отправки электронного письма при нажатии.Элемент меню появится, когда я нажму кнопку «Выполнить» в редакторе сценариев, но затем при обновлении или закрытии Google Sheet этот пункт меню исчезнет.
Код, который у меня изначально работал, но по какой-то причине больше не работает.
function onOpen() {
var ss = SpreadsheetApp.openById("1j2Q58oxxcTS-QYmdvaEiNWgyRagqF17rv8o3tYWB1TQ");
var menu = [{name: "Submit", functionName:"myFunction"}];
ss.addMenu("Submit Booking", menu)
}
function myFunction() {
var source = SpreadsheetApp.openById("1j2Q58oxxcTS-QYmdvaEiNWgyRagqF17rv8o3tYWB1TQ");
var email = "removed for privacy reasons";
var subject = "New Buffel Park Travel Bookings";
var link = "https://docs.google.com/spreadsheets/d/1j2Q58oxxcTS-QYmdvaEiNWgyRagqF17rv8o3tYWB1TQ/edit#gid=1832370497";
var message = "New bookings have been submitted for Buffel Park site staff.";
var html_message = "<p>New bookings have been submitted for Buffel park site staff."+
"<p>"+
"<p>Booking details can be found <a href=\""+link+"\">here.</a>"+
"<p>"+
"<p>A PDF copy of the sheet at time of submission is also attached to this email.";
var pdf = DriveApp.getFileById(source.getId()).getAs('application/pdf').getBytes();
var attach = {fileName:'Buffel Park Travel Booking.pdf',content:pdf, mimeType:'application/pdf'};
MailApp.sendEmail (email, subject, message, {htmlBody: html_message,attachments:[attach]});
var cc = Session.getActiveUser().getEmail();
var sub = "New bookings have been submitted for Buffel Park site staff.";
var html = "<p>New bookings have been submitted for Buffel park site staff."+
"<p>"+
"<p>A PDF copy of the sheet at time of submission is also attached to this email.";
MailApp.sendEmail (cc, sub, message, {htmlBody: html,attachments:[attach]});
}
Мне просто нужно, чтобы кнопка оставалась там, где она есть, поэтому она отправляет запрос по электронной почте для запроса