Создать список вложенных папок только в Google листе - PullRequest
0 голосов
/ 04 марта 2019

Я пытался написать строку кода, которая автоматически генерирует список подпапок в одной конкретной папке.

С помощью приведенного ниже кода мне удалось получить список файлов, но у меня нетНе удалось адаптировать код для получения только подпапок.

Может кто-нибудь помочь мне?

Приветствия Энди

Как я получил файлы

function listFilesInFolder(id) {
  var folder = DriveApp.getFolderById('[ID]');
  var contents = folder.getFiles();
  var file;
  var name;
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName('Mockups');
  var date;
  var size;
  var link;

  sheet.clear();
  sheet.appendRow(["Annons", "Länk", "Uppladdad"]);


  while(contents.hasNext()) {
    file = contents.next();
    name = file.getName();
    date = file.getDateCreated()
    size = file.getSize()
    link = file.getUrl();

    data = [name, link, date, ]
    sheet.appendRow(data);
  }
};

Ответы [ 2 ]

0 голосов
/ 05 марта 2019

Получил работу с кодом ниже.

Спасибо JG за помощь, ваш вклад заставил его работать!

function generateFolderIndex(id) {
   var folder = DriveApp.getFolderById('[ID]');
   var subFolders = folder.getFolders();
   var childFolders = subFolders
   var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheetByName('Projekt');

   sheet.clear();
   sheet.appendRow(["Projekt", "Länk", "Skapad"]);

while (subFolders.hasNext())
  {    
  var childFolder = childFolders.next(); 

  var folderID = childFolder.getId();
  var name = childFolder.getName()
  var link = childFolder.getUrl()
  var date = childFolder.getDateCreated()


   data = [name, link, date, ]
    sheet.appendRow(data);

  }
};
0 голосов
/ 04 марта 2019

На самом деле, есть команды, специфичные для папок.Измените вашу функцию следующим образом:

var subFolders = folder.getFolders();

while (subFolders.hasNext()
  {    
  var childFolder = childFolders.next(); 

  var folderID = childFolder.getId();    
  Logger.log(folderID);    
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...