TL;DR
ファイルを右クリック → プロパティ → 下部のブロックの解除にチェック → OK。ファイルを再度開く。完了。フォルダ内のファイルをまとめて処理するには、PowerShellで一括実行できます:
Get-ChildItem -Path "C:\Downloads" -Recurse -Include *.xlsx,*.xls,*.xlsm | Unblock-File
実際に何が起きているのか
Chrome、Outlook、Teamsなど、どこからファイルをダウンロードしても、Windowsは静かにZone.IdentifierというNTFS代替データストリームをファイルに付加します。このストリームがファイルをゾーン3(インターネット)としてマークします。Excelはそれを読み取り、マクロが無効化され編集がロックされた読み取り専用のサンドボックスモード「保護ビュー」にファイルを入れます。
表示される黄色いバー:
PROTECTED VIEW Be careful—files from the Internet can contain viruses. Unless you need to edit, it's safer to stay in Protected View.
…これはExcelが設計通りに動作しているだけです。自社のSharePointからの四半期レポート、クライアントからのPDF変換スプレッドシート、あるいは2分前に自分でエクスポートしたファイルでも同じことが起きると、いらいらします。
実際にどんなスタンプが付いているか確認したいですか?自分で調べてみましょう:
Get-Content -Path "C:\Downloads\report.xlsx" -Stream Zone.Identifier
出力:
[ZoneTransfer]
ZoneId=3
ReferrerUrl=https://mail.google.com/
HostUrl=https://mail.google.com/
ZoneId=3がトリガーです。これを削除すれば、保護ビューは起動しなくなります。
修正方法1:単一ファイルのブロックを解除する(GUI)
- ファイルが開いている場合は閉じます。
- Windowsエクスプローラーでファイルを右クリック → プロパティ。
- 全般タブの一番下を確認します。*「このファイルは他のコンピューターから取得したものです。このコンピューターを保護するために、このファイルへのアクセスはブロックされる可能性があります。」*と表示されています。
- ブロックの解除チェックボックスにチェックを入れ → OKをクリック。
- ファイルを開きます。黄色いバーが消えています。
「ブロックの解除」チェックボックスがない場合は、ファイルはすでにクリーンか、ネットワーク側でZone.Identifierが削除されています。修正方法3に進んでください。
修正方法2:PowerShellで複数ファイルのブロックを解除する
クライアントから50個の添付ファイルが届いた場合、一つずつ右クリックすると10分かかります。これなら3秒で済みます:
# フォルダ内のすべてのOfficeファイルのブロックを解除する(再帰的)
Get-ChildItem -Path "C:\Downloads\ClientFiles" -Recurse -Include *.xlsx,*.xls,*.xlsm,*.xlsb,*.csv | Unblock-File
# ブロックが解除されているか確認する
Get-ChildItem -Path "C:\Downloads\ClientFiles" -Recurse -Include *.xlsx | ForEach-Object {
$stream = Get-Item $_.FullName -Stream Zone.Identifier -ErrorAction SilentlyContinue
if ($stream) { Write-Host "Still blocked: $($_.Name)" } else { Write-Host "Unblocked: $($_.Name)" }
}
通常ユーザーとして実行可能 — 自分のプロファイル内のファイルに管理者権限は不要です。
修正方法3:フォルダを信頼できる場所として追加する
ファイルをバッチごとにブロック解除するのはすぐに面倒になります。ワークフローで常に同じフォルダ(例:C:\Work\Clients)にファイルを取り込む場合は、そこを信頼できる場所に設定しましょう。Excelはそのフォルダ内のファイルに対して保護ビューを完全にスキップします。
- Excelを開く → ファイル → オプション → トラスト センター。
- **トラスト センターの設定...**をクリック。
- 信頼できる場所を選択 → **新しい場所の追加...**をクリック。
- フォルダを参照します。必要に応じてこの場所のサブフォルダーも信頼するにチェックを入れます。
- OK → OKをクリック。
ファイルのZone.Identifierは関係なくなります — フォルダパスがそれを上書きします。
警告:C:\Downloadsは悪意のあるファイルが最初に着地する場所です。信頼できる場所にしないでください。C:\Work\ProjectX、C:\Work\Clients\Acmeのように具体的なフォルダを使いましょう — 汎用フォルダは避けてください。
修正方法4:企業環境向けのグループポリシー
チームが毎日SharePointからファイルを取得していて、保護ビューに悩まされ続けている場合、個別のブロック解除は200台のマシンに対してスケールしません。グループポリシーを使えば、保護機能をグローバルに無効化せずに特定の発信元を除外できます。
GPMCのパス:
User Configuration → Administrative Templates
→ Microsoft Excel 2016 → Excel Options → Security → Trust Center
→ Protected View
知っておくべき3つのポリシー:
- インターネット ゾーンのファイルを保護ビューで開かない — 広範囲。すべての受信トラフィックを信頼できるネットワーク管理されたマシンにのみ使用してください。
- 安全でない場所にあるファイルを保護ビューで開かない — より限定的。ほとんどの企業環境での推奨デフォルト。
- ファイルの検証が失敗した場合のドキュメントの動作を設定する — 別のトリガー(ファイルの破損/フォーマットの問題)を処理するもので、ゾーンベースのブロックではありません。
代わりにレジストリ経由で信頼できる場所をプッシュしたいですか?同じ効果で、スクリプト化が簡単です:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Excel\Security\Trusted Locations\Location99
Path = C:\Work\SharedFiles
AllowSubFolders = 1
Date = (current date string)
修正方法5:特定の発信元の保護ビューを無効化する(最終手段)
ここでのトレードオフを理解してください。ファイル → オプション → トラスト センター → トラスト センターの設定 → 保護ビューに進み、制限なく開きたい発信元のチェックを外します:
- インターネットから取得したファイルに対して保護ビューを有効にする — ブラウザダウンロードとメール添付ファイルの主な原因
- 安全でない可能性のある場所にあるファイルに対して保護ビューを有効にする
- Outlook の添付ファイルに対して保護ビューを有効にする
3つすべてのチェックを外すと、すべてのファイルが編集可能な状態で開き、プロンプトもバナーも表示されません。外部ファイルに触れることのない、エアギャップされた内部ワークステーションでは合理的です。一般的なウェブブラウジングに使用するノートパソコンには悪い選択です。
確認方法
これらの修正後の簡単な動作確認:
- 以前ブロックされていたファイルを開きます。黄色い保護ビューのバナーが表示されないはずです。
- セルをクリックします。「編集を有効にする」ボタンなしで、すぐに入力できるはずです。
- 修正方法1または修正方法2の場合、Zone.Identifierストリームが削除されていることを確認します:
Get-Item "C:\Downloads\report.xlsx" -Stream * | Select-Object Stream
# :$DATA のみ表示されるはずです — Zone.Identifier のエントリはありません
どの修正方法を使うべきか
- 今すぐ1つのファイルだけ → 修正方法1(プロパティからブロック解除)
- クライアントからのファイルをまとめて処理 → 修正方法2(PowerShell Unblock-File)
- 決まったフォルダへの定期的なダウンロード → 修正方法3(信頼できる場所)
- 企業の大規模環境、SharePointファイルが常にブロックされる → 修正方法4(グループポリシー)
- 隔離されたワークステーション、すべてのファイルが内部 → 修正方法5(選択的に無効化)

