Skip to content

Instantly share code, notes, and snippets.

@cooltables
Created November 5, 2020 15:10
Show Gist options
  • Save cooltables/67c9dd88f837a3cb7c1ee07b4d5068e5 to your computer and use it in GitHub Desktop.
Save cooltables/67c9dd88f837a3cb7c1ee07b4d5068e5 to your computer and use it in GitHub Desktop.
// Запустите эту функцию, чтобы копировать таблицу Google
function copySheet() {
// создаём объект с настройками
var sets = {
// ↓ Меняйте на айди таблицы, которую хотите копировать
fileId: '1IQuNaJz_XKdNEdu1rlGUZgOgw4Y_9MbLPBGQ8VZnfyo',
// // айди таблицы для копии
//
// ↓ меняйте на любое имя
name: 'Моя копия таблицы Google', // имя для новой таблицы
//
// можно оставить пустым
// чтобы сохранить в корневую
// ↓ папку диска Google
folderId: '' // айди папки, куда поместить таблицу
};
// объявляем
// переменную
// запускаем функцию (ниже) с
// входящей переменной sets:
// передаём наши настройки и
// получаем результат
var result = copySpreadSheetToFolder_(sets);
// записать во временную память "лог"
// результат выполнения операции.
// После запуска функции нажмите [Ctrl]+[Пробел],
// чтобы посмотреть логи.
Logger.log('Создали новую таблицу с id = ' + result);
}
//
//
// Эта функция умеет создавать копию таблицы Google по настройкам:
// sets.fileId = айди файла таблицы, которую вы собираетесь копировать
// sets.name = имя таблицы
// sets.folderId = если указать айди папки, новая таблица будет перемещена в эту папку
function copySpreadSheetToFolder_(sets) {
var destination = DriveApp.getRootFolder(); // целевая папка - корневая папка диска
if (sets.folderId != '') { // если указана папка
destination = DriveApp.getFolderById(sets.folderId); // найти папку по айди
}
var file = DriveApp.getFileById(sets.fileId); // определить файл как объект диска
var copy = file.makeCopy(destination); // копировать файл в указанную папку
if (sets.name && sets.name != '') { // если указано имя файла
copy.setName(sets.name); // переименовать новый файл
// по умолчанию его имя
// генерируется из файла-оригинала
}
var ssNewId = copy.getId();
return ssNewId; // вернуть результат: айди новой таблицы Google
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment