ダウンロード

マクロ警告を表示せずにエクセルブックを開く

■VBScriptを使用したエクセルブックの開き方

マクロが記録された(またはVBAコードが記述された)ブックを開くと、
セキュリティの警告メッセージが 表示されます。
 (セキュリティレベルが「中(M)」の場合)


EXCEL2000-2003の場合
マクロ警告メッセージ
EXCEL2007-2013の場合
macro alert
よく使うブックで毎回メッセージが表示されるのは、たとえ1クリックで済むとはいえ面倒なものです。

セキュリティレベルを「低(L)」にすればメッセージは表示されませんが、これは極めて危険です。

「デジタル署名」や「信頼できる場所の追加」(EXCEL2007以上)とするのも、結構、面倒です。

VBScriptを使ったマクロ警告メッセージの非表示

VBScriptを使うと、このメッセージを表示することなくマクロ入りのブックを 開くことが出来ます。

・使用方法

 1.メモ帳を起動
 2.下記のVBScriptコードを記述
   (エクセルブック名を変更)
 3.メモ帳を「名前を付けて保存」
   「ファイルの種類」を「すべてのファイル(*.*)」にし、
   「ファイル名」を「xxxx.vbs」にして保存する。

・実行方法

xxxx.vbs をダブルクリックするとエクセルブックがマクロ警告無しに開かれます。
スクリプトファイルのショートカットを作成し、エクセルのアイコン EXCELに変更すれば、違和感は無くなるでしょう。

下図は「ライフゲーム.xls」を起動するVBスクリプトを「ライフゲーム.vbs」としたもの。

この「ライフゲーム.vbs」の中に下記のコードを記述します。
ファイル例





VBScriptコード
Option Explicit

Dim strBook 	'ブック名
Dim strCurDir	'現在のフォルダパス

Dim objWshShell	'シェルオブジェクト
Dim objExcel	'エクセルオブジェクト


'エクセルブック名
strBook = "ライフゲーム.xls"  '<- 開くブック名を記述

'シェルオブジェクトの作成
Set objWshShell = CreateObject("WScript.Shell")

'カレントディレクトリを取得
strCurDir= objWshShell.CurrentDirectory

'シェルオブジェクト破棄
Set objWshShell = Nothing


'エクセルオブジェクトを作成
Set objExcel = CreateObject("Excel.Application")

'エクセル画面を表示します
objExcel.Visible = True

'ワークブックを開く
objExcel.Workbooks.Open strCurDir & "\" & strBook 

'エクセルオブジェクトの破棄
Set objExcel = Nothing