- Вы хотите скопировать активную электронную таблицу в указанную папку c.
- Вы хотите использовать имя файла из
getActiveSheet().getRange("B97").getValue()
. - Вы хотите добиться этого, используя Google Apps Script.
Если я правильно понял, как насчет этого ответа? Пожалуйста, подумайте об этом как об одном из нескольких возможных ответов.
Точки модификации:
- При
DriveApp.getFoldersById("my_folder_id").next()
метод getFoldersById
не существует. Если вы хотите использовать идентификатор папки, используйте DriveApp.getFolderById(folderId)
. - К сожалению, электронную таблицу нельзя создать напрямую с помощью
createFile()
. В вашем случае, чтобы скопировать активную электронную таблицу, вы можете использовать makeCopy()
.
Когда указанные выше точки отражаются в вашем скрипте, это выглядит следующим образом.
Модифицированный скрипт :
var folderId = "###"; // Please set the folder ID you want to put the copied Spreadsheet.
const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var filename2 = spreadsheet.getActiveSheet().getRange("B97").getValue();
var folder = DriveApp.getFolderById(folderId);
DriveApp.getFileById(spreadsheet.getId()).makeCopy(filename2, folder);
Ссылки: