#google-apps-script #google-sheets
#google-apps-script #google-sheets
Вопрос:
Кто-нибудь может помочь мне со сценарием? Возможно ли то, что я пытаюсь сделать? Ничего из того, что я пытаюсь, не работает, я даже не знаю, что я делаю. У меня есть скрипт для копирования листа в другие книги, и он работает, но он копирует только в те, которые находятся внутри родительской папки, а не во все папки внутри родительской папки (не на весь мой диск). Это выше моего уровня мастерства, но это должно быть возможно?????? — У меня есть папка района, в которой находится наш главный шаблон RIMP вместе с папками для каждого из наших зданий. Мне нужно скопировать лист из основного шаблона в рабочие тетради каждого отдельного ученика RIMP, которые находятся внутри папок внутри папки Округа.
Вот мой скрипт:
function onOpen() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var pasteSheet = [ {name: "2020 RIMP", functionName: "copySheet"}];
ss.addMenu("Send RIMPS", pasteSheet);
}
function copySheet() {
var source = SpreadsheetApp.getActiveSpreadsheet();
var sheet = source.getSheets()[0];
var sourceFile = DriveApp.getFileById(source.getId());
var sourceFolder = sourceFile.getParents().next();
var folderFiles = sourceFolder.getFiles();
var thisFile;
while (folderFiles.hasNext()) {
thisFile = folderFiles.next();
if (thisFile.getName() !== sourceFile.getName()){
var currentSS = SpreadsheetApp.openById(thisFile.getId());
sheet.copyTo(currentSS);
currentSS.getSheets()[currentSS.getSheets().length-1].setName('Grade 2020 RIMP').activate();
currentSS.moveActiveSheet(4);
}
};
}
Это работает, если все файлы находятся внутри одной папки, но это не так. Они находятся во вложенных папках. Основная рабочая тетрадь, в которой находится сценарий, находится в папке округа, затем есть вложенные папки школы, затем вложенные папки учителя, а рабочие тетради учащихся, которым нужна новая вкладка, находятся во вложенных папках учителя. Возможно ли это вообще? Я не могу найти в Интернете ничего, что имело бы для меня хоть какой-то смысл!
Комментарии:
1. Вы можете получить все папки внутри папки и для каждой извлеченной папки найти нужную электронную таблицу. Почему это не жизнеспособный вариант? @MichelIeBeitzel
2. @ale13 Вы имеете в виду вытащить список всех вложенных папок в родительской папке, а затем перебрать все эти вложенные папки, чтобы скопировать необходимый лист в каждую вложенную папку (student)?