マクロ付きの Excel で起動時の警告ウィンドウを出さなくする方法 – Office の使い方(6)


[初回公開] 2010年12月20日

Excel にはマクロと呼ばれる自動的に複数の計算や集計したり、グラフを作成するといったプログラム処理を行うことができるが、マクロを組み込んだ Excel ファイルは開くたびにマクロを有効にするかを問う警告ウィンドウが表示されるため、表示しないようにする方法を紹介する。

マクロ付きの Excel で起動時の警告ウィンドウを出さなくする方法

1.マクロとは

マクロとは、Excel や Word など Microsoft 社の Office 製品に搭載されているプログラム実行機能のことである。
VBA と呼ばれるプログラム言語を用いてコーディングし、実行することで人の手を介して 1 つずつ行っていた操作を一気に自動化することができる。

2.マクロで処理を自動化するメリットと危険性

マクロで処理を自動化するメリットとしては、人の手で操作していた Excel の処理を自動化できることである。
処理を自動化することで作業にかかる時間を短縮するだけでなく、毎回同じ処理を行うので人の手でする場合と比較して操作ミスが無くなる。

例えばセルに入力されている値を違うシートにコピーして再集計したり、マクロを 1 回実行するだけで毎回デザイン修正していたグラフの見出しや色の調整を定型処理として保存して使い回すことができる。

CSV など他のシステムからのデータも集計して PDF など帳票に出力することも容易になる。

反面、危険性もありマクロは Excel など Office 製品を超えて Windows OS の制御も行うことができるので悪意ある第三者が作成したマクロを誤って実行すると情報が漏洩したり、パソコン内のデータを削除するなど実害が及ぶこともある。

そのため、うっかりメールに添付された Word や Excel を開くとウィルスに感染したり、ランサムウェアと呼ばれるデータを人質に取られるトラブルに見舞われるケースが増えている。

3.マクロを有効化する警告ウィンドウが表示される様子

マクロ付きの Excel を開くと下図のように「マクロにやウィルスが含まれている可能性があります。マクロを無効にすると安全ですが、マクロが適正な場合、機能が使えなくなります。」の文章が表示される。

マクロの有効化を問う警告ウィンドウの様子


ボタン「マクロを無効にする」をクリックするとパソコンへの危険性は無くなるが、マクロが使えなくなるため、Excel を開いた直後にマクロが自動的に処理するプログラムを入れている場合は動作しないだけでなく、ファイルが開くことができない恐れもある。

反対に「マクロを有効にする」をクリックすると Excel に設定されたマクロが動作できる状態になる。
既に処理の実績がある Excel ファイルや、マクロの作成者の身元が判明している Excel であればこのボタンを押して有効化させても問題ない。

また、この警告ウィンドウは処理するプログラムが無くてもマクロの残骸があると Excel を開くたびに表示されるため、次の手順で警告ウィンドウを出さなくすることができる。

4.マクロ有効化の警告ウィンドウを出さなくする方法

マクロの有効無効を問う警告ウィンドウを出さなくする方法は、マクロを作成・編集する Visual Basic Editor で Excel ファイル内にあるマクロのモジュールを開放(削除)することで表示されなくなる。

Visual Basic Editor を利用してマクロを削除する方法は次の通りである。

4-1.マクロの編集画面を表示する

マクロを作成・編集する Visual Basic Editor を表示するためには下図のようにタブ「開発」を選択して、「Visual Basic」をクリックする。
もしタブ「開発」が上部メニューになければ、Excel の上部メニューの「ファイル」をクリックして表示される画面から「オプション -> リボンのユーザー設定」で「開発」にチェックを入れると上部メニューに表示されるようになる。

タブ「開発」内の「Visual Basic」をクリック

もし、利用している Excel が古いバージョン場合は上部メニューの「ツール -> マクロ -> Visual Basic Editor」と選択すると、普段利用している Excel の画面とは別にマクロ作成用のウィンドウが表示される。

「ツール -> マクロ  -> Visual Basic Editor」と選択


4-2.モジュールの解放処理を行う

Visual Basic Editor は普段利用している Excel のシートとは別のウィンドウが表示され、ウィンドウの左側に開いている Excel に設定されているマクロの一覧や、マクロの付帯情報(プロパティ)が表示される。

反対に右側には実際にマクロをプログラムする入力ウィンドウや、マクロとして動作するボタンや入力フォームをデザインするウィンドウが表示される。

ここで起動時の警告ウィンドウを出さなくするためには Visual Basic Editor の左側にある Module{数値} と表示されているファイル名を選択し、右クリックすると下図のようにメニューが表示されるので「Module1 の解放」をクリックすうr。

もし複数のマクロプログラムが用意されている場合は Module{数値} が複数あり、数値はマクロが作成された 1 から連番となっているので順番に解放していく。

「Module1 の解放」を選択


ここで「Module{数値} の解放」を選択すると下図のようにエクスポート(バックアップ)を問うポップアップが表示されるため、ボタン「いいえ」を選択して Excel を保存しなおすと、次回起動時からはマクロの警告ウィンドウが表示されなくなる。

Module のエクスポートで「いいえ」を選択

尚、「Module1 の解放」とは、設定しているマクロ消す行為であるため、必要な処理がプログラムされている場合は解放すると正常に動作しなくなる点に注意が必要である。

関連記事

コメントを残す