Office 2010 の VBA マクロのセキュリティ設定を計画する

 

適用先: Office 2010

トピックの最終更新日: 2016-11-29

Visual Basic for Applications (VBA) および VBA マクロがどのように動作するかを制御するには、Microsoft Access 2010、Microsoft Excel 2010、Microsoft PowerPoint 2010、Microsoft Publisher 2010、Microsoft Visio 2010、および Microsoft Word 2010 の各アプリケーションで Microsoft Office 2010 の VBA および VBA マクロの設定を変更します。

この記事の内容

  • VBA および VBA マクロ設定の計画について

  • VBA マクロのセキュリティ警告の設定を変更する

  • VBA を無効にする

  • プログラムによって起動されたアプリケーションでの VBA マクロの動作を変更する

  • 暗号化された VBA マクロに対するウイルスのスキャン方法を変更する

  • 関連する VBA マクロ設定

VBA および VBA マクロ設定の計画について

Office 2010 には、VBA および VBA マクロの動作を制御できる設定がいくつかあります。これらの設定を構成することで、以下のことが行えます。

  • VBA マクロに関するセキュリティ警告の設定を変更する。これには、VBA マクロの無効化、すべての VBA マクロの有効化、および VBA マクロについてユーザーに通知する方法の変更が含まれます。

  • VBA を無効にする。

  • オートメーションを利用してプログラムによって起動されたアプリケーションでの VBA マクロの動作を変更する。

  • ウイルス対策ソフトウェアによる暗号化された VBA マクロのスキャン方法を変更する。

Office カスタマイズ ツール (OCT) と Office 2010 管理用テンプレートでセキュリティ設定を構成する方法については、「Office 2010 のセキュリティを構成する」を参照してください。

既定では、VBA が有効になっており、信頼できる VBA マクロは実行が許可されています。これには、信頼できる場所に保存されたドキュメント内の VBA マクロ、信頼済みドキュメント内の VBA マクロ、および次の基準を満たす VBA マクロが含まれます。

  • マクロが開発者によってデジタル署名で署名されている。

  • デジタル署名が有効である。

  • このデジタル署名が最新である (有効期限切れでない)。

  • デジタル署名に関連付けられている証明書が、信頼できる証明機関 (CA) によって発行されたものである。

  • マクロに署名した開発者が信頼できる発行元である。

注意

マクロの既定のセキュリティ設定は、Microsoft Outlook 2010 では異なります。詳細については、Outlook 2013 のセキュリティのドキュメントを参照してください。

信頼できない VBA マクロは、ユーザーがメッセージ バーをクリックして VBA マクロを有効にするまで、実行を許可されません。

VBA マクロのセキュリティ警告の設定を変更する

Office 2010 には、VBA マクロのセキュリティ警告の設定や VBA マクロの動作を変更できる設定があります。信頼できない VBA マクロについてユーザーに通知する方法や VBA マクロの既定の動作を変更する場合は、次のガイドラインを使用して、この設定の構成方法を決定してください。

設定名: [VBA マクロ通知設定]


  • 説明: この設定では、Visual Basic for Applications (VBA) マクロに関する警告をユーザーに通知する方法を指定します。この設定は、Access 2010、Excel 2013、PowerPoint 2013、Publisher 2010、Visio 2013、および Word 2010 のアプリケーション単位で構成します。この設定では、次の 4 つのオプションのいずれかを選択できます。


    • [通知してすべてを無効にする] - アプリケーションは、署名の有無にかかわらず、すべてのマクロについてセキュリティ バーを表示します。これは既定の設定です。


    • [デジタル署名付きのマクロを除くすべてのマクロを無効にする] - アプリケーションは、デジタル署名付きのマクロについてのみセキュリティ バーを表示します。ユーザーは、このセキュリティ バーを使用してマクロを有効にするか無効のままにするかを選択できます。署名のないマクロは無効になり、ユーザーが通知を受け取ることもマクロを有効にすることもできません。


    • [通知せずにすべてを無効にする] - アプリケーションは、署名の有無にかかわらず、すべてのマクロを無効にし、ユーザーへの通知も行いません。


    • [すべてのマクロを有効にする (推奨しません)] - 署名の有無にかかわらず、すべてのマクロが有効になります。このオプションでは、危険なコードの実行が検出されないので、セキュリティが大幅に低下する可能性があります。


  • 影響: この設定を有効にして [デジタル署名付きのマクロを除くすべてのマクロを無効にする] オプションを選択した場合、署名のないマクロを含むドキュメントやテンプレートではそれらのマクロによって提供されるすべての機能が失われます。このような機能の損失を避けるには、マクロを含むファイルを信頼できる場所に配置します。

    重要

    [デジタル署名付きのマクロを除くすべてのマクロを無効にする] が選択されている場合、ユーザーは署名のない Access 2010 データベースを開くことができません。

    [通知せずにすべてを無効にする] を選択した場合、署名のないマクロや署名付きのマクロを含むドキュメントやテンプレートではそれらのマクロによって提供されるすべての機能が失われます。これは、マクロが署名付きであって発行元が信頼できる発行元の一覧に記されている場合にも当てはまります。


  • ガイドライン: セキュリティ環境の制限が厳しい組織では、通常、この設定を有効にして [デジタル署名付きのマクロを除くすべてのマクロを無効にする] オプションを選択します。ユーザーによるマクロの実行を許可しない組織では、通常、この設定を有効にして [通知せずにすべてを無効にする] オプションを選択します。

VBA を無効にする

Office 2010 には、VBA を無効にできる設定があります。既定では、VBA が有効になっています。VBA を無効にする場合は、次のガイドラインを使用して、この設定の構成方法を決定してください。

設定名: [Office アプリケーションの VBA を無効にする]


  • 説明: この設定によって Excel 2013、Microsoft Outlook 2010、PowerPoint 2013、Publisher 2010、Microsoft SharePoint Designer 2010、および Word 2010 で VBA が無効になり、これらのアプリケーションでは VBA コードが一切実行できなくなります。この設定はグローバルな設定であり、アプリケーション単位では構成できません。この設定を有効にしても、ユーザーのコンピューターにおける VBA 関連のコードのインストールや削除は発生しません。


  • 影響: この設定を有効にすると、VBA コードは実行されなくなります。VBA コードを含むドキュメントの使用が業務上不可欠な組織では、この設定を有効にしないでください。


  • ガイドライン: セキュリティ環境の制限が厳しい組織では、通常、この設定を有効にします。

プログラムによって起動されたアプリケーションでの VBA マクロの動作を変更する

Office 2010 には、オートメーションを利用してプログラムによって起動されたアプリケーションにおける VBA マクロの動作を変更できる設定があります。既定では、別のプログラムを使用して Excel 2013、PowerPoint 2013、または Word 2010 を起動すると、プログラムによって起動されたそのアプリケーション内で任意のマクロを実行できます。次のような場合は、以下のガイドラインを使用して、この設定の構成方法を決定してください。

  • オートメーションを利用してプログラムによって起動されたアプリケーション内ではマクロを実行できないようにする。

  • オートメーションを利用してプログラムによって起動されたアプリケーション向けに構成された VBA マクロのセキュリティ設定に従って、VBA マクロの実行を許可する。

設定名: [自動セキュリティ]


  • 説明: この設定では、別のアプリケーションからプログラムによって開かれたアプリケーションでマクロを実行できるかどうかを指定します。この設定は、グローバルな設定であり、Excel 2013、PowerPoint 2013、および Word 2010 に適用されます。アプリケーション単位では構成できません。この設定では、次の 3 つのオプションのいずれかを選択できます。


    • [マクロを既定で無効にする] - プログラムによって開かれたアプリケーションでは、すべてのマクロが無効になります。


    • [マクロを有効にする (既定)] - プログラムによって開かれたアプリケーション内でのマクロの実行が許可されます。このオプションが既定の構成になっています。


    • [アプリケーションのマクロのセキュリティ レベルを適用する] - マクロの機能は、アプリケーションごとに [VBA マクロの警告設定] をどのように構成するかによって決定されます。


  • 影響: この設定を有効にして [マクロを既定で無効にする] オプションを選択すると、プログラムによって起動されたアプリケーションではマクロが実行されません。これは、プログラムによって起動されたアプリケーションでマクロを含むドキュメントやテンプレートを開く場合に問題となる可能性があります。この場合、マクロによって提供される機能は利用できません。同様の状況は、[アプリケーションのマクロのセキュリティ レベルを適用する] オプションを選択し、[VBA マクロの警告設定] を使用してマクロを無効にした場合にも発生する可能性があります。


  • ガイドライン: 多くの組織では、この設定を有効にして、[アプリケーションのマクロのセキュリティ レベルを適用する] オプションを選択します。ただし、セキュリティ環境の制限が厳しい組織では、通常、この設定を有効にして [マクロを既定で無効にする] オプションを選択します。

暗号化された VBA マクロに対するウイルスのスキャン方法を変更する

Office 2010 には、Excel 2013、PowerPoint 2013、および Word 2010 において、暗号化された VBA マクロがウイルス対策ソフトウェアによってどのようにスキャンされるかを変更できる設定があります。既定では、暗号化されたドキュメント、プレゼンテーション、またはブックに含まれる VBA マクロは、クライアント コンピューターにウイルス対策プログラムがインストールされていない限り、無効になります。また、暗号化された VBA マクロを含むドキュメントをユーザーが開くと、そのようなマクロはクライアント コンピューターのウイルス対策プログラムによってスキャンされます。次のような場合は、以下のガイドラインを使用して、この設定の構成方法を決定してください。

  • ウイルス対策プログラムによるスキャンを行わずに、暗号化されたすべての VBA マクロの実行を許可する。

  • ウイルス対策プログラムがインストールされている場合は暗号化された VBA マクロをスキャンするが、インストールされていない場合は暗号化された VBA マクロを有効にする。

設定名: [Excel Open XML ブック内の暗号化されたマクロをスキャンする]、[PowerPoint Open XML プレゼンテーション内の暗号化されたマクロをスキャンする]、[Word Open XML 文書内の暗号化されたマクロをスキャンする]


  • 説明: この設定では、暗号化された VBA マクロに対するウイルス スキャンの方法を指定します。これはアプリケーション単位の設定であり、Excel 2013、PowerPoint 2013、および Word 2010 のそれぞれについて構成できます。この設定では、次の 3 つのオプションのいずれかを選択できます。


    • [暗号化されたマクロをスキャンする (既定)]。暗号化されたすべてのマクロは、ウイルス対策プログラムによってスキャンされない限り、無効になります。このオプションが既定の構成になっています。


    • [ウイルス対策ソフトウェアが利用できる場合はスキャンする]。ウイルス対策プログラムによってスキャンされない限り、暗号化されたマクロは無効になります。ただし、ウイルス対策プログラムがクライアント コンピューターにインストールされていない場合は、暗号化されたすべてのマクロが有効になります。


    • [スキャンせずにマクロを読み込む]。クライアント コンピューターにウイルス対策プログラムがインストールされているかどうかに関係なく、暗号化された VBA マクロは有効であり、スキャンされません。


  • 影響: この設定を有効にして [スキャンせずにマクロを読み込む] オプションを選択した場合は、暗号化されたマクロのウイルス スキャンが行われないので、セキュリティが大幅に低下する可能性があります。これは、クライアント コンピューターにウイルス対策プログラムがインストールされていない状態でこの設定を有効にして [ウイルス対策ソフトウェアが利用できる場合はスキャンする] オプションを選択した場合にも当てはまります。


  • ガイドライン: 多くの組織では、この設定の既定の構成を使用し、この設定を変更しません。

関連する VBA マクロ設定

Office 2010 アプリケーションにおける VBA マクロの動作に影響する設定は、ほかにもいくつかあります。特殊なセキュリティ環境に合わせるために VBA マクロの設定を変更する場合は、次の設定を検討してください。


  • [VBA プロジェクト オブジェクト モデルへのアクセスを信頼する]

    オートメーション クライアントが VBA プロジェクトにアクセスできるかどうかを決める設定です。


  • [セキュリティの問題に関するセキュリティ バーの通知をすべて無効にする]

    この設定を有効にすると、安全でない VBA マクロに関する警告など、メッセージ バーの警告がユーザーに表示されなくなります。

注意

ポリシー設定に関する最新情報については、Microsoft Excel 2010 ブック Office2010GroupPolicyAndOCTSettings_Reference.xls を参照してください。このブックは、「Office 2010 Administrative Template files (ADM, ADMX, ADML) and Office Customization Tool (英語)」(https://go.microsoft.com/fwlink/?linkid=189316&clcid=0x411) (英語) ダウンロード ページの [Files in this Download] セクションで入手できます。