👌

[GAS]フォルダ一覧の取得

2022/08/20に公開

google スプレッドシートにgoogleドライブのフォルダの中身を吐き出したくて、書きました。
スプレッドシート内で使えるように関数にすればもっと良かったかもしれない。
でも他の人が使うことは無いと思うのでこれはこれで良いのかもしれない。


function getFolders() {
  
  rowIndex = 1; // The starting row of a range.
  colIndex = 1; // The starting row of a column.
  
  const sheetName = "シート1"; //入力したいシートを宣言
  
  const folder_id = "1*********************"; //フォルダIDを指定する
  
  const folders = DriveApp.getFolderById(folder_id).getFolders();
  
  let foldersArray = [];
  
  while(folders.hasNext()){
    const childFolder = folders.next();
    //console.log(childFolder.getName())
    //console.log("Name: "+ childFolder.getName()+" \nURL: https:\/\/drive.google.com\/drive\/u\/0\/folders\/"+childFolder.getId())
    foldersArray.push([childFolder.getName(), childFolder.getUrl()]);
  }
  
  const range = SpreadsheetApp.getActive().getSheetByName(sheetName).getRange(rowIndex, colIndex, foldersArray.length, foldersArray[0].length);
  range.setValues(foldersArray);
}

参考

Discussion