Хорошо, я на 99%, благодаря множеству других постов о том, как это сделать.
Что я делаю? У меня есть форма Google.Когда эта форма заполнена и ответы находятся на соответствующем листе Google, у меня есть еще одна вкладка с шаблоном (с набором формул), который автоматически заполняет ставки для людей.Первая формула - это имя, которое выводится с вкладки «Ответы формы».Следующий скрипт скрывает все остальные листы, сохраняет одну вкладку, которую я хочу, в PDF, в нужной папке (затем скрывает другие листы).
Проблема Когда я запускаю это как тест, он работает отлично.PDF-файл, который попадает в папку, называется с выводом из ячейки E5 (которая является формулой) с указанием имени человека.Однако, когда я устанавливаю триггер, когда приходит ответ формы, тогда все верно (все данные на листе верны), только имя файла отображается как «Да».Я так растерялся, почему это «Да».Если я сразу же запускаю скрипт, это имя человека из ячейки E5 ..... Вот мой код.
Является ли триггер быстрым, чтобы нажать ответ?Я не думаю, что это может быть, поскольку вывод на PDF является правильным
function topdf() {
var foldersave=DriveApp.getFolderById('1dSOK6bBCRyEO0_fTuuMFH9sNa4wAWYW8');
var d= new Date();
var request = {
"method": "GET",
"headers":{"Authorization": "Bearer "+ScriptApp.getOAuthToken()},
"muteHttpExceptions": true
};
var key='1-e8dhOOZ5zwfeIBSTSH7yFNKgxVTxwqZvqcTNtQUQrA';
var fetch='https://docs.google.com/spreadsheets/d/'+key+'/export?format=pdf&size=letter&portrait=false'
var ss= SpreadsheetApp.getActiveSpreadsheet();
var sheets=ss.getSheets()
var name=ss.getRange("E5").getValue()
sheets[0].hideSheet()
sheets[1].hideSheet()
sheets[2].hideSheet()
sheets[3].hideSheet()
sheets[4].hideSheet()
sheets[5].hideSheet()
sheets[6].hideSheet()
var pdf = UrlFetchApp.fetch(fetch, request);
pdf = pdf.getBlob().setName(name);
var file = foldersave.createFile(pdf)
sheets[0].showSheet()
sheets[1].showSheet()
sheets[2].showSheet()
sheets[3].showSheet()
sheets[4].showSheet()
sheets[5].showSheet()
sheets[6].showSheet()
}