OneDrive 上の Excel バージョン履歴が容量を使っているときは、現在の .xlsx ファイルのサイズと、過去の版が占めるクラウド容量を分けて調べます。版を整理しても、現在の Excel ファイルそのものが同じ割合で小さくなるわけではありません。
この記事は、Microsoft 365 組織の OneDrive for work or school と SharePoint Online を管理する方向けです。まず容量レポートを作り、残す復元点と削除の影響を確認してから、承認されたサイト・OneDrive・ライブラリだけを整理します。個人用 OneDrive の一括削除手順としては使えません。
現在のファイルとバージョン履歴の容量を分ける
バージョン履歴は、誤った上書きや不要な変更から以前の状態へ戻すために役立ちます。容量を減らす対象を決める際は、版数が多いという理由だけで削除せず、どの期間の変更を戻せる必要があるかを先に決めてください。
| 調べるもの | 数値の意味 |
|---|---|
| 現在の .xlsx のサイズ | 現在のブックのデータや画像などを含むファイルの大きさ |
| 過去の版の Size | 版容量レポートにある各バージョンのサイズ。単位はバイト |
| 版数・保存期間 | どのファイルに、いつの復元点が残っているか |
| サイト・OneDrive の使用量 | ファイルと履歴などを含むクラウド側の使用状況。現在のブックサイズとは別に確認 |
たとえば履歴の Size 合計が大きくても、それを現在の .xlsx のサイズと読み替えることはできません。削減量は対象の版、保持設定、削除の進捗によって変わるため、削除前後を同じ範囲・同じ単位で比較します。版容量レポートの公式説明
削除前に復元要件とバックアップを決める
トリムジョブで削除した版は永久削除され、通常のごみ箱を経由しません。「失敗したらごみ箱で戻す」という前提では実行できません。必要な版を復元できるバックアップを削除前に確保してください。既存バージョンのトリムに関する注意
- 対象のサイトまたは OneDrive URL、単一ライブラリかサイト全体かを決める。
- 業務で戻せる必要がある期間、重要な確定版、復元を担当する人を決める。
- Microsoft 365 Backup など、対象の版を復元できるバックアップの範囲と復元方法を確認する。
- 保持ポリシーや eDiscovery ホールドの有無を管理担当者に確認する。
- 容量調査と影響見積もりを行い、実行する対象・方式・条件を承認された内容として残す。
現在のファイルを1つダウンロードしただけでは、そのファイルのすべての過去の版を保存したことにはなりません。保存したいのが現在のブックなのか、過去の復元点なのかを区別します。
SharePoint 管理者が版容量レポートを生成する
最新の SharePoint Online Management Shell を用意し、SharePoint Administrator として接続します。接続先は組織の管理エンドポイントです。管理環境の準備は、公式のレポート生成手順から確認してください。
対象サイトまたは OneDrive の URL を $siteUrl、レポートを保存する同じサイト内の CSV の URL を $reportUrl として設定します。次は OneDrive を対象にした URL の例です。テナント名・ユーザー名・実在するライブラリや保存先フォルダーへ置き換え、他人の OneDrive を指定していないか確認します。
$siteUrl = "https://contoso-my.sharepoint.com/personal/user_contoso_com"
$reportUrl = "$siteUrl/Documents/VersionReports/version-storage.csv"
New-SPOSiteFileVersionExpirationReportJob -Identity $siteUrl -ReportUrl $reportUrl
この操作はバージョンを削除せず、バックグラウンドで調査して CSV を保存します。レポートにはファイルや作成者の情報が含まれるため、必要な担当者だけが閲覧できる保存先を用意してください。サイト全体ではなく特定ライブラリだけを調べる場合は、公式の New-SPOListFileVersionExpirationReportJob を使う方法もあります。
同じ2つの URL で進捗を確認する
Get-SPOSiteFileVersionExpirationReportJobProgress -Identity $siteUrl -ReportUrl $reportUrl
レポートは非同期で作られ、小規模なサイトやライブラリでも24時間超、大規模では数日かかると案内されています。CSV が見え始めても完了とは限りません。生成中のファイルを編集するとジョブが失敗するため、進捗で完了を確認するまで変更しないでください。
完成した CSV で容量と復元点を調べる
| 項目 | 調査で見ること |
|---|---|
| ファイルと版の識別情報 | WebId・DocId・版番号などで、どのファイルの履歴かを識別する |
| Size | 各版のバイト数。対象ファイル・期間ごとに版数と合計を比較する |
| SnapshotDate | その版が過去の版になった日時。推定値を示す列がある点も確認する |
| 期限の列 | CurrentExpirationDate・AutomaticPolicyExpirationDate・TargetExpirationDate の違いを確認する |
末尾が .Compact の列では、直前の行と同じ値が空欄に省略されることがあります。空欄を「所属ファイル不明」と扱って集計すると、版数や容量の分類を誤ります。公式の説明やサンプルに従って省略値を補ってから分析してください。
ここで削除を実行する必要はありません。容量が大きいファイル、長期間残る版、業務で必要な版を整理し、「どれを残し、どれを整理できるか」の候補を作ります。
What-If で削除の影響を見積もる
サイトやライブラリの What-If は、完成済みの版容量レポートを使った影響分析です。削除コマンドに適当なオプションを付けて試す方法ではありません。公式の What-If チュートリアルには、Automatic・日数・版数ごとのサンプルがあります。
- レポートジョブの完了を確認し、CSV をローカルへダウンロードする。
- 元の CSV を保管し、分析結果は別ファイルへ出力する。
- 公式サンプルで、検討する方式と保持条件を適用する。掲載スクリプトを使う場合は PowerShell 7 の要件も確認する。
- 削除対象になる版数・容量と、残る復元期間・重要な版を比較する。
- 必要な版が消える条件は採用せず、条件または対象範囲を調整する。
Microsoft のサンプルにある日数や版数は説明用です。その値を組織の推奨値としてそのまま採用せず、復元要件に合わせて決めます。
承認した範囲だけをトリムする
| 方式 | 削除条件と注意 |
|---|---|
| 日数による整理 | 指定日数より古い版を対象にする。30日未満は指定不可。手動期限方式では2023年1月1日より前の版を保持できない制限がある |
| 版数による整理 | 指定した数を超える古い版を対象にする。メジャー版とマイナー版の扱いを確認する |
| Automatic | 版の年齢に応じた自動アルゴリズムを適用する。必要な復元点が残るかを事前に見積もる |
日数方式では、DeleteBeforeDays から求まる基準日が2023年1月1日より後になる必要があります。長期の履歴を残したい場合は特に、この制限を見落とさないでください。方式と制限は公式のトリムモード説明で確認できます。
単一ライブラリには New-SPOListFileVersionBatchDeleteJob、サイト全体には New-SPOSiteFileVersionBatchDeleteJob を使います。サイト全体のジョブは、そのサイト内の全ドキュメントライブラリが対象です。Excel だけを対象に調べた場合でも、ライブラリ単位の削除条件は他の種類のファイルにも影響するため、調査範囲と実行範囲をそろえます。
次は、単一ライブラリを日数で整理するコマンドの形です。$libName は承認したライブラリ名、$approvedDays は影響分析済みの日数として、実行前に管理者が設定します。固定の削除日数や全サイトを走査するループは含めていません。
New-SPOListFileVersionBatchDeleteJob -Site $siteUrl -List $libName -DeleteBeforeDays $approvedDays
このコマンドは実際の永久削除ジョブを登録します。対象・条件・バックアップを最終確認してから実行してください。版数や Automatic を選ぶ場合の引数は、サイト・ライブラリ別の公式チュートリアルで確認します。
進捗と残った履歴を確認する
単一ライブラリのジョブは、同じ対象を指定して進捗を調べます。サイト全体なら Get-SPOSiteFileVersionBatchDeleteJobProgress -Identity $siteUrl を使用します。
Get-SPOListFileVersionBatchDeleteJobProgress -Site $siteUrl -List $libName
処理時間は版数、サービスの状態、他のジョブなどに影響されます。すぐに容量が減らなくても同じ削除を繰り返さず、まずジョブの状態を確認します。処理を止める必要がある場合は、対象範囲に対応する Remove-SPOListFileVersionBatchDeleteJob または Remove-SPOSiteFileVersionBatchDeleteJob を確認してください。停止しても、既に削除された版は戻りません。
保持ポリシーや eDiscovery ホールドがある版は、その保持設定が優先されます。トリム時に期限が設定されても、その時点では削除されない場合があります。容量を減らすために保持やホールドを勝手に解除せず、公式の保持・期限に関する FAQと組織の担当者で確認します。
- ジョブが完了したか、対象と条件が予定どおりだったか確認する。
- 現在の Excel が開けることと、残す予定の版が確認できることを調べる。
- 削除前と同じ範囲・単位で、版数、版容量、クラウドの使用量を比較する。
- 今後作られる版の上限・保存方針を別途見直し、監視の担当と確認頻度を決める。
組織・ライブラリの版設定を変えることと、既存の版を今回トリムすることは別です。設定変更が過去の版へどのように反映されるかを確認し、Excel の自動保存を無効にしたり、未確認の保存間隔を変更したりする方法で代用しないでください。
よくある質問
版を消せば Excel の開く速度やライセンス問題も直りますか?
この調査・整理で扱うのは版のクラウドストレージです。現在のブックの性能やライセンスの適用に同じ原因があるとは限りません。症状ごとに現在のファイル、通信、アプリ、契約を分けて調べます。
ファイルをアップロードし直して履歴をリセットしてよいですか?
共有リンク、参照元、Power Automate・Power BI などとの関係を変える可能性があります。容量整理の最初の方法にせず、既存ファイルと復元要件を維持できる範囲の調査・管理を先に行います。
個人用 OneDrive でも同じ管理コマンドを使えますか?
使えません。ここで示した管理シェルとジョブは Microsoft 365 組織の SharePoint Online・職場または学校の OneDrive が対象です。アカウントの種類を確認してから進めてください。

コメント