【VBAマクロ】LAN上にあるマクロ有効Excelファイルが「このファイルのソースが信頼できないため、Microsoftによりマクロの実行がブロックされました」と表示されるものをなんとかした件

先日、NASにあるマクロ有効ブックのExcelファイルにて以下の表示が出てしまいました。

この表示は、どうやら「Emotet」の感染爆発によってMicrosoftのセキュリティ強化の一環として行われており、インターネット上からダウンロードしたファイルについて行っているらしいです。

インターネットからのマクロは、Office で既定でブロックされます - Microsoft 365 Apps
Office がインターネットからファイル内のマクロをブロックする方法に関する管理者向けのガイダンスを提供します。

インターネットでのファイルに関しては[Mark of the Web]という属性がほぼデフォルトでついており、解除する必要があります。

[プロパティ]→[□許可する]で解除すれば問題なく実行できると思います。

しかしながら、ここ数ヶ月前からイントラネットである社内サーバやNAS上のファイルでもそのポリシーが適用されたらしく、デフォルトでマクロがブロックされてしまっています。ですが、LAN上のプロパティ欄には、MOTWの項目がありませんので、どうやっても、ブロックされてしまいます。

PC名からのアクセスならブロックされないっぽい。

色々調べてみた結果、どうやらIPアドレスからアクセスしているファイルに関しては、赤い警告が出るらしいです。PC名(例:\\kanapon-no-nas)とかのディレクトリだと問題なくマクロが実行できます。

じゃあ、ネットワークドライブのマウントしている場合はどうしたらいいの?といった話になると思うのですが、PC名からアクセスしネットワークドライブのマウントを行えば基本的には大丈夫かもしれません。(ごめんなさい、未検証です)

スクリプトを使ってネットワークドライブのマウントを行っている場合は、PC名に変更するといいと思います。

トラストセンターを使えばなんとかなる。

Excelのオプションにあるトラストセンターにて、信頼できる場所にPC名(例:\\kanapon-no-nas)を入力してしまえば問題なく使えるのですが、ネットワークドライブのドライブレターやIPアドレスだとエラーが表示されて登録ができません。

これに関しては、なんとかする方法がありhostsファイルを触れば一応解決しますが、管理者権限もいることながら、あまりおすすめできません。というかそのファイル自体がSystem32配下にいるので触らないほうがいいです。

インターネットオプションの設定変更で解決しました。

まさかかと思いますが、昔からあるInternet Explorerのインターネットオプション、実はWindows全体の設定に関係しているらしいです。なのでこちらの設定を触ることで解決しました。

意外と、知られてないんですけどそうらしいです…笑

実際に設定の変更した箇所をご紹介します。

手順

コントロールパネルを開き、インターネットオプションを選択します。

[セキュリティ]タブより[信頼済みサイト]→[サイト(S)]を選択します。

[このWebサイトをゾーンに追加する(D):]にてNASのIPアドレスのみを入力し[追加(A)]をクリックします。この時[このゾーンのサイトにはすべてサーバの確認(https:)を必要とする(S)]にチェックが入っている場合は外します。

これでExcelを開いた際に、赤色の表示がなくなりマクロの実行が行えます。

まとめ

多分ですが、イントラネット上で開けないもの、ブロックされるものがありましたら、インターネットオプションの設定をいじることで解決するケースが増えてくると思います。参考になれば幸いです。

コメント

タイトルとURLをコピーしました