Googleドライブ内のファイルやフォルダの一覧を把握したいと思ったことはありませんか?
特に複数人で共有しているフォルダでは、「どこに何があるのか」を整理したくなるものです。
この記事では、Google Apps Script(GAS)を使って、指定フォルダ内のファイル・フォルダ名とURLをスプレッドシートに一覧化する方法を紹介します。

目次
想定される活用シーン
- ドライブ内の構造を見える化したい
- 管理者がフォルダ構成をチェック・棚卸ししたい
- 特定の共有フォルダを他人に説明・共有しやすくしたい
スクリプトの準備方法
まず、適当なスプレッドシートを作成し、
[ツール] → [スクリプトエディタ] を開いて、以下のコードを貼り付けてください。
コード全文
function makeList() {
const folder_id = "フォルダID"; // リスト化したいフォルダのID
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet_id = ss.getId();
const sheet_name = ss.getSheets()[0].getName();
const folder = DriveApp.getFolderById(folder_id);
appendLogToSpreadsheet(['種類', '名前', 'URL'], sheet_id, sheet_name);
function getAllFolder(f) {
const folders = f.getFolders();
while (folders.hasNext()) {
const subFolder = folders.next();
appendLogToSpreadsheet(['フォルダ', subFolder.getName(), subFolder.getUrl()], sheet_id, sheet_name);
getAllFile(subFolder);
getAllFolder(subFolder);
}
}
function getAllFile(f) {
const files = f.getFiles();
while (files.hasNext()) {
const file = files.next();
appendLogToSpreadsheet([' └ ファイル', file.getName(), file.getUrl()], sheet_id, sheet_name);
}
}
getAllFile(folder);
getAllFolder(folder);
}
function appendLogToSpreadsheet(log, sheetId, sheetName) {
const spreadSheet = SpreadsheetApp.openById(sheetId);
spreadSheet.getSheetByName(sheetName).appendRow([log[0], log[1], log[2]]);
SpreadsheetApp.flush();
}
使い方手順
- Googleスプレッドシートを作成
- スクリプトエディタにコードを貼り付け
const folder_id = "..."
の部分に対象フォルダのIDを入力- メニューから
makeList()
を実行 - スプレッドシートに「種類/名前/URL」が出力されます!
出力例
種類 | 名前 | URL |
---|---|---|
フォルダ | プロジェクト資料 | https://drive.google.com/… |
└ ファイル | 説明書.pdf | https://drive.google.com/file/… |
フォルダ | デザインデータ | https://drive.google.com/… |
└ ファイル | logo.ai | https://drive.google.com/file/… |

まとめ
Googleドライブのファイル・フォルダを手作業で一覧にまとめるのは面倒ですが、GASを使えばわずか1クリックでURL付きのリストが完成します。
チーム運用や資料の棚卸しにも便利なので、ぜひ活用してみてください!