管理者から「現在のドライブ内にある資料をリスト化して提出してほしい」と依頼されることがあります。社内のファイル管理や棚卸しのため、あるいは監査や移行の準備として必要な作業です。しかしファイル数が多いと手作業では非現実的です。本記事ではGoogle Drive内の全ファイル一覧を効率的に作成する方法を、それぞれのメリット・デメリットとともに解説します。
【要点】この記事で確認すること
- 最初に見る場所: 自分のGoogle Drive画面の検索バーとスプレッドシートのアドオン機能を確認します。
- 切り分けの軸: ファイル数が少なければ手動コピー、数百以上ならアドオンやGoogle Apps Script、組織全体なら管理コンソールのレポート機能と使い分けます。
- 注意点: 会社PCで許可されていないアドオンやスクリプトは使わず、必ず管理者に確認してから実行してください。権限不足でファイル一覧に漏れが出る場合があります。
ADVERTISEMENT
目次
なぜファイル一覧が必要になるのか?よくあるシチュエーション
管理者がファイル一覧を求める背景はいくつかあります。例えば、部署ごとのファイル保存状況を把握したい、ストレージ使用量を削減するために不要ファイルを洗い出したい、あるいは別のクラウドストレージへ移行する準備として全ファイルを棚卸しする場合です。また監査対応として、特定の条件に合致するファイルを抽出する必要があることもあります。依頼された側としては、正確な一覧を迅速に提出することが求められます。
【基本】Google Driveの検索機能でファイルを絞り込む方法
最も手軽な方法は、Google Driveの検索バーを使って条件を指定し、表示されたファイルを手動でコピーしてスプレッドシートに貼り付ける方法です。ファイル数が数十程度であれば十分実用的ですが、数百以上になると漏れが生じやすく、サブフォルダのファイルを全て取得するのが難しくなります。
検索演算子を活用する
以下のような検索演算子を使うと、ファイルの種類、所有者、更新日などで絞り込めます。
- type:document … Googleドキュメントのみ表示
- owner:me … 自分が所有者のファイル
- modifiedAfter:2024-01-01 … 特定日以降に更新されたファイル
ただし検索結果は最大で1000件までしか表示されず、フォルダ階層をまたいだ全ファイルを取得するには適しません。そのため次に紹介する方法を検討してください。
【応用】Google Apps Scriptで自動的に一覧を作成する方法
ファイル数が多く、サブフォルダも含めて完全な一覧が必要なら、Google Apps Script(GAS)を使うのが現実的です。スプレッドシートのスクリプトエディタにコードを記述し、実行することでファイル名、URL、更新日などを自動で出力できます。以下に手順とコード例を示します。
手順
- Googleスプレッドシートを新規作成します。
- メニューから「拡張機能」→「Apps Script」を開きます。
- スクリプトエディタに以下のコードを貼り付けます。 function listFiles() { var folder = DriveApp.getFolderById(‘フォルダID’); var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); sheet.appendRow([‘名前’, ‘URL’, ‘更新日’, ‘サイズ’]); var files = folder.getFiles(); while (files.hasNext()) { var file = files.next(); sheet.appendRow([file.getName(), file.getUrl(), file.getLastUpdated(), file.getSize()]); } }
- フォルダIDの部分は、一覧を取得したいフォルダを開いたときのURLから取得します(例: https://drive.google.com/drive/folders/123456789 の「123456789」の部分)。
- スクリプトを保存し、実行ボタンを押します。初回は権限承認が必要です。承認後、シートにファイル一覧が出力されます。
- サブフォルダも含めたい場合は、再帰処理を追加する必要があります。参考までに再帰版のコードも用意できますが、長くなるため本記事では割愛します。管理者に依頼する際は「再帰処理が可能なGASを準備してもらう」と伝えてください。
GASを使う際の注意点
GASの実行にはGoogleアカウントの権限が必要です。また、大量ファイルを扱うと実行時間制限(6分)に達する可能性があります。その場合は処理を分割するか、後述の管理コンソールレポートの利用を検討してください。
【比較】3つの一覧作成方法のメリット・デメリット
| 方法 | 難易度 | 自動化 | 取得できる情報 | 権限の必要性 | 向いているケース |
|---|---|---|---|---|---|
| 検索&手動コピー | 低 | なし | ファイル名、URL(手動で収集) | 不要 | ファイル数が少なく、1回限りの場合 |
| アドオン(例:Drive File Lister) | 中 | 半自動 | ファイル名、URL、更新日、サイズなど | アドオンのインストール権限 | フォルダ階層が浅く、中規模ファイル数 |
| Google Apps Script | 高 | 完全自動 | 自由にカスタマイズ可能 | スクリプトの実行権限、Drive APIスコープ | 多数ファイル、サブフォルダを含む、定期実行が必要 |
【注意】失敗しやすいパターンと対処法
権限不足によりファイルが取得できない
一覧を作成する対象のフォルダやファイルに対する閲覧権限がない場合、そのファイルは結果に含まれません。特に共有ドライブ内の一部フォルダのみアクセス権がある場合、全ファイルを取得するには管理者に権限追加を依頼する必要があります。自分がアクセスできる範囲だけでも一覧を作成し、「アクセス権がないファイルがある可能性」を注釈として添えると親切です。
GASの実行時間制限やエラー
GASは1回の実行で6分まで、またトリガーを使っても合計で1時間程度の制限があります。ファイル数が1万を超えると途中で止まる可能性があるため、その場合は管理コンソールのレポート機能を利用するか、複数回に分けてスクリプトを実行します。エラーが出た場合はログを確認し、原因を特定してください。
サブフォルダの取得漏れ
基本的なGASコードは1階層のみの取得です。サブフォルダまで含めるには再帰処理を記述する必要があります。再帰処理を実装する際は、フォルダ内のフォルダに対しても同じ処理を繰り返すようにします。コード例は長くなるため割愛しますが、Googleで「Google Apps Script サブフォルダ ファイル一覧」と検索すればサンプルが見つかります。
【管理者に依頼】権限不足や制限がある場合の相談ポイント
自分で一覧を作成できない場合は、管理者に以下の情報を伝えて依頼するとスムーズです。
- 取得したい範囲: 特定の共有ドライブ全体か、自分のマイドライブか、または複数のフォルダか。
- 必要な項目: ファイル名、URL、作成者、更新日、サイズ、フォルダパスなど。
- 提出期限と形式: いつまでに、どのような形式(Googleスプレッドシート、CSV、Excel)で必要か。
- 制限事項: 会社ポリシーでアドオンやGASが禁止されている場合、管理者は管理コンソールの「レポート」→「Driveの監査ログ」から特定の条件でファイルリストをエクスポートできます。この方法なら全てのファイルを対象にできますが、事前にログ分析の設定が必要です。
管理者に依頼する際は、「PowerShellやサードパーティツールを使う方法もあるが、セキュリティ上のリスクがあるため、できれば標準機能で対応してほしい」と伝えるとよいでしょう。
よくある質問
Q: ファイルの作成者や更新日も一覧に含められますか?
A: 可能です。GASではfile.getOwner().getName()などで取得できます。また、スプレッドシートのアドオンでも標準で表示される場合があります。管理者に依頼する場合は、必要な項目を明確に伝えてください。
Q: サブフォルダを全て含めた一覧は作れますか?
A: 再帰処理を使えば可能です。GASのコード例をインターネットで検索すると見つかります。または、アドオンの「Drive File Lister」はサブフォルダを自動的にスキャンする機能があります。
Q: 個人のマイドライブと共有ドライブの両方を一覧にしたい。
A: それぞれ別々に取得する必要があります。GASではDriveApp.getRootFolder()でマイドライブを、DriveApp.getFolderById()で共有ドライブのルートフォルダを指定します。両方を統合したシートを作成するには、別々のスクリプトを実行するか、一つのスクリプトで両方を処理するよう記述します。
まとめ
Google Drive内の資料一覧を作成するには、ファイル数や目的に応じて手動コピー、アドオン、Google Apps Scriptを使い分けてください。権限やポリシーの制限がある場合は、管理者に相談し、管理コンソールのレポート機能を利用することも検討しましょう。一覧を作成した後は、必ず内容を確認し、漏れがないかチェックしてから管理者に提出することをおすすめします。適切な方法を選ぶことで、作業工数を大幅に削減できます。
ADVERTISEMENT
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Google Driveの人気記事ランキング
- 【SharePoint】SharePointで「同期」ボタンが表示されない時の確認手順
- 【PDF】スマホからPCへPDFをケーブル無しで送る!クラウド(Googleドライブ/iCloud)同期の基本
- 【SharePoint】ドキュメントライブラリを開けない時のアクセス許可と保存場所チェック
- 【Googleスプレッドシート】テンプレートギャラリーを使い倒すコツ!業務別の活用例
- 【Googleスプレッドシート】Apps Scriptが動かない・実行されない時のチェックポイント
- 【Googleスプレッドシート】Googleフォームの回答エクスポート!CSVダウンロードの操作
- 【Googleドキュメント】WordファイルをDocs形式に変換!互換性と書式維持
- 【Googleアカウント】会社アカウントと個人アカウントを分けたい時の運用方法
- 【Googleドキュメント】AndroidからWordファイル開く!アプリ選択の指定
- 【OneDrive】OneDriveで同期済みなのにスマホから開けない時に見直す保存場所と同期設定
