Application.AutomationSecurity プロパティ (Excel)
プログラムによってファイルを開くときに Microsoft Excel が使用するセキュリティ モードを表す MsoAutomationSecurity 定数を設定または返します。 値の取得と設定が可能です。
構文
式。AutomationSecurity
expressionApplication オブジェクトを 表す変数。
注釈
このプロパティは、アプリケーションが起動したときに自動的に msoAutomationSecurityLow に設定されます。 したがって、既定の設定に依存するソリューションの分割を避けるため、注意が必要プログラムを使用してファイルを開いた後、このプロパティを msoAutomationSecurityLow にリセットします。 また、悪意のある破壊行為を回避するために、このプロパティの設定はプログラムからファイルを開く直前と直後に行う必要があります。
MsoAutomationSecurity の値に使用できるのは、 MsoAutomationSecurity クラスの定数のいずれかです。
msoAutomationSecurityByUI。 [ セキュリティ] ダイアログ ボックスで指定されたセキュリティ設定を使用します。
msoAutomationSecurityForceDisable。 プログラムから開くすべてのファイルのすべてのマクロを、セキュリティの警告を表示せずに無効にします。
注:
Microsoft Excel 4.0 のマクロについては、この設定では無効化されません。 Microsoft Excel 4.0 マクロを含むファイルをプログラムで開くと、ファイルを開くかどうかを判断するように求められます。
msoAutomationSecurityLow。 すべてのマクロを有効にします。 アプリケーションが起動されたときの既定値です。
ScreenUpdating を False に設定してもアラートには影響せず、セキュリティ警告には影響しません。
DisplayAlerts の設定は、セキュリティ警告には適用されません。 たとえば、ユーザーが中レベルのセキュリティ レベルにあるときに DisplayAlertsを False に、 AutomationSecurity を msoAutomationSecurityByUI に設定した場合、マクロの実行中にセキュリティ警告が表示されます。 これによって、ファイルが正しく開けた場合にはセキュリティ警告は表示されますが、マクロでファイル オープン エラーをトラップすることも可能になります。
例
次の使用例は、現在の自動セキュリティ設定を調べ、マクロが無効になるように設定を変更し、[ファイルを開く] ダイアログ ボックスを表示し、選択された文書を開いた後、自動セキュリティを元の設定に戻します。
Sub Security()
Dim secAutomation As MsoAutomationSecurity
secAutomation = Application.AutomationSecurity
Application.AutomationSecurity = msoAutomationSecurityForceDisable
Application.FileDialog(msoFileDialogOpen).Show
Application.AutomationSecurity = secAutomation
End Sub
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。