M365Con 2027 – 無料オンラインカンファレンス · 11–22 Jan 2027 · 120 sessions→ m365con.net

ブログ · Mirko Peters

Excelでマクロを有効にする方法(Windows、Mac、ブロックされたファイル)

By ·

Excelでマクロを有効にする方法です。1つのファイルには「コンテンツの有効化」、ダウンロードしたファイルには「ブロックの解除」、すべてのファイルにはトラストセンターを使います。Mac、Web、ポリシーによる制限も扱います。

Automatically translated with AI from the original post. Read the English original

Excelでマクロを有効にするには、ブックを開き、リボンの下の黄色のセキュリティバーでコンテンツの有効化を選択します。これにより、そのファイルだけでマクロが有効になります。すべてのファイルで既定の動作を変えたい場合は、ファイル > オプション > トラストセンター > トラストセンターの設定 > マクロの設定の順に進み、そこでレベルを選択します。この記事は、マクロが動作しないブックを受け取ったExcelユーザーと、その理由を説明する必要がある管理者を対象としています。1つのファイルへの簡単な対処法、赤色の「セキュリティリスク」バーの解決方法、トラストセンターの設定をわかりやすく解説し、信頼できる場所、そしてMacやブラウザーでの違いも扱います。

重要なポイント

  • 1つのファイルでマクロを有効にするには、黄色のセキュリティ バーで[コンテンツの有効化]を選択します。すると Excel はそのファイルを信頼できるドキュメントとして扱います。
  • [コンテンツの有効化]ボタンがなく、赤い「セキュリティの危険性」バナーが表示される場合、そのファイルはインターネットから取得されたものです。ファイルを右クリックして[プロパティ]を開き、[ブロックの解除]にチェックを入れてください。
  • すべてのファイルに適用するには、[ファイル]、[オプション]、[トラスト センター]、[トラスト センターの設定]、[マクロの設定]の順に進みます。既定では、通知を表示してマクロを無効にする設定になっています。
  • 信頼できる場所に指定したフォルダー内のマクロファイルは、確認なしで実行されます。そのため、自分で管理しているフォルダーだけを追加してください。
  • Excel for the web では、マクロを含むブックを開いて編集することはできますが、VBAマクロの作成、実行、編集はできません。

クリックする前に守るべきルールが1つあります。Microsoft 自身の推奨は、マクロの内容を把握していない限り、ファイルのマクロを決して有効にしないことです。ブックを開いて、読んで、編集するだけならマクロは必要ありません。マクロが必要になるのは、自動化を実行させたいときだけです。

マクロとは何か、そしてExcelがブロックする理由

マクロとは、VBA(Visual Basic for Applications)で書かれた、またはマクロの記録機能で作成された小さなプログラムで、手順を自動的に繰り返してくれます。週次のエクスポートデータの整形、レポートの書式設定、シート間のデータコピーなどがその例です。Excelではマクロを.xlsm拡張子のファイル(または古い.xlsファイル)に保存します。そのため、通常の.xlsxファイルではマクロについて確認されることはありません。

警告が表示される理由は単純です。マクロはコードであり、コードは害を及ぼす可能性があります。攻撃者は長年にわたり、請求書や出荷通知のように見せかけた添付ファイルにVBAマクロを仕込み、マルウェアやランサムウェアを配布してきました。だからExcelは、あなたが判断するまでマクロを無効にしているのです。この記事を通して繰り返し問うのも、同じ問いです。このファイルの入手元を信頼できるか、という問いです。

「コンテンツの有効化」で1つのファイルのマクロを有効にする

ほとんどの人にとって必要なのはこの方法であり、全体の設定には手を加えないため、最も安全な方法です。

  1. ブックを開きます。マクロを含み、設定が既定のままであれば、マクロが無効化されたことを示す黄色のバーがリボンの下に表示されます。
  2. コンテンツの有効化を選択します。
  3. 「セキュリティの警告」ダイアログが表示された場合は、はいを選択して、そのドキュメントを信頼します。

Microsoft のMicrosoft 365 ファイルのマクロを有効または無効にする方法に関するページでは、これをドキュメントを信頼済みとしてマークすることだと説明しています。この表現は重要です。多くのガイドでは、ファイルを閉じるとマクロが再び無効になると書かれています。しかし Microsoft の説明は異なります。ドキュメントを信頼済みにすると、Excel はそのファイルについて再度確認しなくなります。また Microsoft は、個別のファイルだけ信頼を取り消すことはできないと付け加えています。取り消すには、トラスト センターで信頼済みドキュメントをすべてクリアする必要があり、その後はすべてのファイルで再び確認が表示されます。

マクロを一度だけ実行したく、そのファイルを恒久的に信頼したくない場合、バナーには適切な中間の選択肢がありません。その場合は、ファイルを開き、VBA が読めるならマクロの動作を確認してから判断してください。

バナーが赤い場合: インターネットからのファイルのブロックを解除する

2022 年以降、Windows 版の Office は、インターネットから取得したファイル内のマクロをブロックしています。メールの添付ファイルやブラウザーからのダウンロードで表示されます。バナーには セキュリティ リスク と表示され、ファイルのソースが信頼されていないため Microsoft がマクロをブロックしたと説明され、詳細情報 ボタンがあります。コンテンツの有効化 ボタンはありません。バナーを何度クリックしても、何も起こりません。

仕組みは次のとおりです。Windows は、信頼されていない場所から取得したファイルに、Mark of the Web と呼ばれる非表示のマーカーを付けます。Office はこのマーカーを確認し、見つかると、ユーザー自身の設定が適用される前にマクロをブロックします。インターネットからのマクロが既定でブロックされる仕組みに関する Microsoft の記事には、Office が判断する順序が記載されています。ブロックは最後のステップで、それより前の段階でマクロが許可されなかった場合にのみ適用されます。

信頼できるファイルのブロックを解除するには、次の手順に従います。

  1. ブックが開いている場合は閉じます。
  2. エクスプローラーでファイルを右クリックし、プロパティ を選択します。
  3. 全般 タブで ブロックの解除 チェックボックスをオンにし、ダイアログを確定します。
  4. ファイルを再度開きます。通常の黄色いバーに コンテンツの有効化 が表示されるはずです。

Microsoft は PowerShell による方法も文書化しています。Unblock-File -Path "C:\Path\To\File.xlsm" を実行すると、同じ効果でマーカーが削除されます。ネットワーク共有上のファイルでは、ブロックの解除チェックボックスが表示されないことがあります。その場合は、信頼済みサイト、ローカル イントラネット ゾーン、または信頼できる場所を利用します。これは通常 IT 部門の作業になります。

同じページには、時間の節約に役立つ次の詳細も記載されています。

  • マーカーが付くのは NTFS ドライブ上のファイルのみです。FAT32 の USB メモリ上のファイルには付きません。
  • OneDrive 同期クライアントでダウンロードしたファイル、SharePoint や OneDrive から デスクトップ アプリで開く で開いたファイル、デスクトップやドキュメントなど同期済みの既知のフォルダー内のファイルには、マーカーは付きません。
  • このブロックは Windows 固有の動作です。Mac 版 Office、Android や iOS 版 Office、Web 版 Office は影響を受けません。

トラスト センターからすべてのファイルでExcel のマクロを有効にする方法

トラスト センターには全体の切り替え設定があります。マクロ付きファイルを一日中開いていて黄色いバーが煩わしい場合や、逆にセキュリティを強化したい場合に使用します。

  1. ファイル > オプション を選択します。
  2. トラスト センター を選択し、次に トラスト センターの設定 を選択します。
  3. マクロの設定 を選択し、オプションを選んで OK を選択します。

近道もあります。リボンに [開発] タブが表示されている場合は、開発 を選択し、次に [コード] グループの マクロのセキュリティ を選択します。どちらの方法でも同じダイアログが開きます。

以下は、Excel に表示される設定オプションです。Excel のマクロのセキュリティ設定に関する Microsoft のページと、前述の Microsoft 365 のページに基づいています。一部の Microsoft 365 バージョンでは、「すべてのマクロを無効にする」の代わりに「VBA マクロを無効にする」と表示される場合がありますが、意味は同じです。

  • 通知なしですべてのマクロを無効にする。マクロも通知も無効になります。マクロが一切不要な場合、または署名されていないマクロを信頼できる場所からのみ実行したい場合に選択します。
  • 通知ありですべてのマクロを無効にする。既定の設定です。マクロは無効のままで通知が表示され、ファイルごとに判断できます。
  • デジタル署名されたマクロを除き、すべてのマクロを無効にする。信頼できる発行元による署名済みマクロは実行されます。署名のないマクロはブロックされます。まだ信頼していない発行元の署名済みマクロの場合は、Excel で有効にして発行元を信頼できます。
  • すべてのマクロを有効にする(推奨されません。危険なコードが実行される可能性があります)。すべてのマクロが確認なしで実行されます。Microsoft は、これによりコンピューターが悪意のあるコードに対して脆弱になると説明しています。便利さのための設定として使わないでください。
  • VBA マクロが有効な場合に Excel 4.0 マクロを有効にする。Excel 専用のチェックボックスです。オンにすると、VBA の設定が古い XLM マクロにも適用されます。オフにすると、XLM マクロは通知なしに無効になります。
  • VBA プロジェクト オブジェクト モデルへのアクセスを信頼する。他のプログラムがブック内の VBA コードを読み取ったり変更したりできるかを制御する開発者向けの設定です。既定ではオフで、ユーザーごとに設定されます。信頼できるツールから要求がない限り、オフのままにしてください。

制限が 2 つあります。1 つ目は、Excel の設定は Excel にのみ適用され、Word や PowerPoint には適用されないことです。2 つ目は、職場や学校のデバイスでは管理者がこれらのオプションをロックしている場合があり、その場合はボタンがグレーアウトされるか、設定が保持されません。

ほとんどのユーザーにとって最適な設定は既定の 通知を表示してすべてのマクロを無効にする です。新しいファイルを開くたびに 1 回クリックする手間はかかりますが、自分で判断できる状態を保てます。

信頼できる場所と信頼できる発行元の利用

共有ドライブ上のチーム テンプレートのように、同じマクロ ファイルを毎日使う場合、ファイルごとに信頼の設定をするのは手間がかかります。その代わりとなるのが信頼できる場所です。

追加するには、ファイル > オプション > 信頼センター > 信頼センターの設定 > 信頼できる場所 の順に移動し、新しい場所の追加 を選択して 参照 を選び、フォルダーを指定します。ダイアログが閉じるまで OK を選択します。同じページには、場所を変更または削除するための 変更 と 削除 があります。信頼できる場所の追加、削除、変更に関する Microsoft の記事では、これらのフォルダー内のファイルは安全とみなされ、一部のセキュリティ チェックが省略されると説明されています。インターネット由来のブロックも含まれます。インターネットから信頼できる場所に保存されたファイルは、マクロが有効な状態で開きます。

そのため、フォルダーは慎重に選んでください。自分だけが書き込めるフォルダーであれば問題ありません。多くの人がファイルを置く共有フォルダーはリスクがあります。また、ダウンロード フォルダーのようにあらゆるファイルが集まる場所は適していません。Microsoft はネットワーク上の場所を信頼できる場所にできるとしながらも、推奨はしていないと説明しています。

もう 1 つの方法は、信頼できる発行元を利用することです。開発者はコード署名証明書でマクロに署名し、デバイスがその証明書を信頼します。デジタル署名されたマクロを除き、すべてのマクロを無効にする を設定すると、信頼できる発行元による署名済みマクロは確認なしで実行されます。Microsoft は 2 つの注意点を挙げています。1 つ目は、同じ証明書で署名されたものはすべて信頼されることです。2 つ目は、信頼できる発行元は Windows 全体に適用される設定であることです。企業の場合は、発行元の証明書をポリシーで配布し、ユーザーが独自に発行元を追加できないようにすることが推奨されています。

Mac、Web 版 Excel、モバイル

Mac 版 Excel。 赤いインターネット マクロ ブロックは Mac には適用されません。開発者タブを表示するには、Excel > 環境設定 > リボンとツールバー の順に移動し、メイン タブ を選択して 開発者 をオンにします。Mac でマクロのセキュリティ設定を開く正確なメニューの手順は Microsoft のページで確認できなかったため、ここでは操作手順を具体的に示しません。Excel の環境設定でセキュリティ オプションを探し、ファイルのコピーで試してください。また、Windows 向けに書かれた VBA は Mac に存在しない機能を使う場合があるため、セキュリティ設定とは関係なく、Mac ではマクロが動作しないことがある点にも注意してください。

Excel for the web。 ここでの答えは「いいえ」ですが、少し例外があります。Microsoft のExcel for the web での VBA マクロの操作のページによると、マクロを含むブックを開いて編集することはでき、マクロに関するメッセージも表示されませんが、VBA マクロを作成、実行、編集することはできません。マクロの削除もデスクトップアプリで行う必要があります。マクロを実行する必要がある場合は、リボンの上にあるデスクトップアプリで開くを選択してください。

モバイル。 私が確認した Microsoft のページには、スマートフォンでのマクロの動作は記載されていないため、ここでは断定しません。マクロに依存する作業は、デスクトップアプリで行う前提で計画してください。

ブラウザーで動作する自動化が必要な場合。 Office Scripts は、Microsoft の別の機能です。Office Scripts のプラットフォーム要件として、Microsoft は Excel for the web、Excel for Windows(バージョン 2210 以降)、Excel for Mac を挙げています。また、ブックは OneDrive for Business に保存されている必要があり、対応するビジネス版または教育機関向けのライセンスも必要です。これは従来の VBA を実行する方法ではありません。まったく別の仕組みのため、既存のマクロは作り直す必要があります。興味がある場合は、Office Scripts のページから始めてください。

マクロを有効にしても実行されない理由

以下を順番に確認してください。最初の 2 つで、ほとんどのケースを解決できます。

  • ファイルがまだブロックされている。 赤いバナーは、ファイルにまだ Mark of the Web が付いていることを意味します。プロパティでブロックを解除してください。
  • 設定が想像より厳しくなっている。 マクロの設定を確認してください。通知なしですべてのマクロを無効にするになっている場合は、バナーも表示されず、何も実行されません。そのため、機能が壊れているように見えることがあります。
  • ポリシーによって制限されている。 管理対象のデバイスでは、IT 管理者がマクロの動作を設定できます。Microsoft のインターネット マクロに関するページには、「インターネットから取得した Office ファイルのマクロの実行をブロックする」というポリシーと、別の「VBA マクロの通知設定」ポリシーが記載されています。これらはグループ ポリシー、Intune、またはクラウド ポリシーで配布されます。オプションがロックされている場合や、ポリシーによってマクロがブロックされているというメッセージが表示される場合は、IT チームに確認してください。なお、インターネットからのブロックに関するポリシーは、Microsoft 365 Apps for enterprise では利用できますが、Microsoft 365 Apps for business では利用できません。
  • ファイルがマクロ有効形式ではない。 .xlsx ファイルにはマクロを保存できません。マクロが失われた場合は、ファイルが誤った形式で保存された可能性があります。ファイル > 名前を付けて保存を使用し、「Excel マクロ有効ブック」(.xlsm)を選択してください。
  • 開発タブが表示されない。 Windows では、ファイル > オプション > リボンのユーザー設定に移動し、メイン タブの下にある開発にチェックを入れて、OKを選択します。このタブはショートカットを提供するだけです。開発タブがなくても、トラスト センターには引き続きアクセスできます。
  • ファイルがアドインである。 Microsoft によると、インターネット由来のマーカーが付いた Excel アドインファイル(.xla、.xlam)では、署名が機能しません。マーカーを削除するか、信頼できる場所を使用してください。

設定を正しく行ったら、開発タブからマクロを実行します。マクロを選択し、マクロ名のボックスでマクロを選んで、実行を選択してください。

よくある間違い

  • 黄色いバーが煩わしいからといって、すべてのマクロを有効にするを選択する。日常的に使う本当に必要なファイルは、信頼できる場所に配置してください。
  • 予期しない添付ファイルでコンテンツの有効化をクリックする。ファイルになぜマクロが必要なのか分からない場合は、マクロを有効にしないでください。
  • 赤いバナーのコンテンツの有効化を探す。代わりに、プロパティでファイルのブロックを解除してください。
  • 共有フォルダー全体やダウンロード フォルダーを、信頼できる場所として登録する。
  • Excel の変更が Word や PowerPoint にも適用されると考える。各アプリには、それぞれ独自のマクロ設定があります。
  • Excel for the web でマクロが実行されると期待する。実行されず、ブラウザーも警告を表示しません。

併せて確認したい関連トピック

  • マクロに署名する。 デジタル署名を付けると、設定を下げることなく、Excel に自分のマクロを信頼させることができます。
  • マクロ設定のためのグループ ポリシーと Intune。 多数のデバイスを管理している場合は、インターネットからのブロックと通知ポリシーがどのように展開されるかを確認してください。
  • 代替手段としての Office Scripts。 要件を確認し、ブラウザーで動作するスクリプトがタスクに適しているかどうかを判断してください。Office Scripts のページが出発点になります。
  • マクロの編集と実行。 マクロが動くようになったら次に学ぶべきことは、[開発] タブ、[マクロ] ダイアログ、Visual Basic Editor です。
  • 保護ビュー。 リスクの高い場所から取得したファイルを対象とする、Office の別の保護機能です。マクロ バーとは別物なので、何をブロックするのかを確認しておいてください。

次のステップ

問題が発生したファイルを開き、バナーの色を確認してください。黄色であれば [コンテンツの有効化] を選択し、赤色であればまずプロパティでファイルのブロックを解除します。多数のユーザーで Excel のマクロを有効にする必要がある場合は、全員にセキュリティ レベルを下げてもらうのではなく、信頼できる場所または署名付きマクロを設定し、IT チームに展開を依頼してください。

Entities in this article

Microsoft Excel Office Scripts

Related articles

RSS