メールで受け取ったExcelファイルを開いたら、画面上部に赤い帯で「セキュリティ リスク このファイルのソースが信頼できないため、Microsoft によりマクロの実行がブロックされました。」と表示され、マクロのボタンを押しても何も起きない…。
ここ数年、Excelのマクロに関するご相談でとても多いのがこの症状です。コードが壊れているわけではなく、Windows と Office のセキュリティの仕組みによって止められている状態です。
この記事では、原因と、安全に解除するための手順を順番にまとめます。
※確認環境:Windows 11 / Microsoft 365(Excel デスクトップ版)
━━━━━━━━━━━━━━━━━━━━
■ なぜブロックされるのか
━━━━━━━━━━━━━━━━━━━━
Windows は、インターネット経由で入手したファイル(メールの添付、ブラウザでのダウンロード、チャットツールで受け取ったファイルなど)に「Webのマーク(Mark of the Web)」という目に見えない印を付けます。
Microsoft は2022年から、この印が付いたファイルに含まれるVBAマクロを既定でブロックする仕様に変更しました。マクロ付きファイルがウイルス感染の入口として悪用されてきたためです。
そのため、
・取引先や同僚から送られてきた正規のファイル
・自分で作ってメールで送り、別のPCで保存し直したファイル
でも、同じように止まることがあります。
なお、黄色い帯で「セキュリティの警告 マクロが無効にされました。」と出て「コンテンツの有効化」ボタンがある場合は別の状態です。こちらはボタンを押せば実行できます(中身に心当たりがある場合に限ってください)。
━━━━━━━━━━━━━━━━━━━━
■ 解除の前に:まず確認すること
━━━━━━━━━━━━━━━━━━━━
ブロックは「危ないかもしれないから止めた」という合図です。解除する前に、次の点を確認してください。
・送り主に心当たりがあるか(知らない差出人のファイルは開かない)
・送り主に「マクロ付きファイルを送ったか」を別の手段で確認できるか
・会社のPCの場合、社内ルールでマクロの扱いが決まっていないか
ここに不安がある場合は、解除せずに削除するのが安全です。
なお、ファイルを開いた直後は、まず黄色い「保護ビュー」の帯が表示されることがあります。ここで「編集を有効にする」を押すと、赤い「セキュリティ リスク」の帯に切り替わります。赤い帯の状態では、Excelの画面の中だけでは解除できません。
━━━━━━━━━━━━━━━━━━━━
■ 解除方法1:ファイルのプロパティで許可する
━━━━━━━━━━━━━━━━━━━━
1つのファイルだけ使いたい場合は、この方法がいちばん手軽です。
1. Excel でそのファイルを開いている場合は、いったん閉じる
2. エクスプローラーでファイルを右クリック →「プロパティ」
3.「全般」タブのいちばん下にある「セキュリティ:このファイルは他のコンピューターから取得したものです…」の横の「許可する」にチェックを入れる
(Windows のバージョンによっては「ブロックの解除」という表記です)
4.「OK」を押して、ファイルを開き直す
5. 黄色い帯で「セキュリティの警告 マクロが無効にされました。」と出たら「コンテンツの有効化」を押す
赤い帯が黄色い帯に変われば、ブロックは解除できています。
もし「全般」タブにこの「セキュリティ」の行が表示されていない場合は、Webのマークが付いていないということです。その場合は、後述する「保存場所」や「会社のポリシー」が原因の可能性があります。
━━━━━━━━━━━━━━━━━━━━
■ 解除方法2:「信頼できる場所」に登録する
━━━━━━━━━━━━━━━━━━━━
毎月同じフォルダにマクロ付きファイルを置いて使う、という場合は、そのフォルダを「信頼できる場所」に登録する方法もあります。
1. Excel で「ファイル」→「オプション」
2.「トラスト センター」→「トラスト センターの設定」
3.「信頼できる場所」→「新しい場所の追加」
4. 登録したいフォルダを選んで「OK」
注意点として、ダウンロードフォルダやデスクトップ、Cドライブ全体のような「何でも入る場所」は登録しないでください。マクロ専用のフォルダを作って、そこだけを登録するのがおすすめです。
また、ネットワーク上のフォルダは追加の設定が必要で、会社の方針で禁止されていることもあります。
━━━━━━━━━━━━━━━━━━━━
■ 確認用コード:ブックの保存場所を表示する
━━━━━━━━━━━━━━━━━━━━
「信頼できる場所に登録したのに動かない」というときは、ファイルが実際にどこから開かれているかを確認してみてください。OneDrive 上のファイルは、パスが「https://~」のようなWeb上の場所として扱われることがあり、ローカルのフォルダとして登録した信頼できる場所と一致しない場合があります。
マクロが動く別のブック(新規ブックなど)で、次のコードを標準モジュールに貼り付けて実行すると、開いているすべてのブックの保存場所を一覧で確認できます。
Sub ShowOpenBookPaths()
Dim wb As Workbook
Dim msg As String
For Each wb In Application.Workbooks
msg = msg & wb.Name & vbCrLf & " → " & wb.FullName & vbCrLf & vbCrLf
Next wb
MsgBox msg, vbInformation, "開いているブックの保存場所"
End Sub
表示されたパスが「https://」で始まる場合は、いったんPC内のフォルダ(信頼できる場所に登録したフォルダ)にファイルをコピーしてから開くと、状況が切り分けやすくなります。
━━━━━━━━━━━━━━━━━━━━
■ やってはいけないこと・注意点
━━━━━━━━━━━━━━━━━━━━
・トラストセンターの「マクロの設定」を「すべてのマクロを有効にする」に変更する
→ 確かに動くようにはなりますが、悪意のあるファイルのマクロまで動いてしまいます。おすすめしません。
・ダウンロードしたファイルをまとめて一気に許可する
→ どのファイルが安全か確認しないまま解除するのは危険です。1つずつ確認してから許可してください。
・上記をすべて試しても赤い帯が消えない
→ 会社の管理者が「インターネットからのマクロを常にブロックする」設定をしている可能性があります。この場合は個人では変更できないため、情報システム部門に相談してください。
━━━━━━━━━━━━━━━━━━━━
■ それでも困ったときは
━━━━━━━━━━━━━━━━━━━━
ブロックを解除してもマクロが動かない、別のエラーが出る、というときは、マクロのコード側や実行環境に原因があるかもしれません。
私は金融業界での実務を経験したのち、ITエンジニアに転身し、現在はIT企業で Excel VBA・VBScript を使った業務ツールの開発・運用を担当しています。
ココナラでは、次のサービスを出品しています。
▼ 動かないExcelマクロの原因を調査します(3,000円〜)
「ブロックは解除したのに動かない」「エラーの意味が分からない」といったマクロの原因を調べ、修正方法をご案内します。
▼ Excel作業をVBAマクロで自動化します(5,000円〜)
転記・集計・帳票作成など、毎回の手作業をマクロにまとめます。納品時に、必要に応じてブロック解除の手順もあわせてご案内します。
「この症状は対応してもらえる?」という段階でも大丈夫です。
ご購入前のご相談も無料です。お気軽にメッセージをお送りください。