[初回公開] 2010年12月20日
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 の上部メニューの「ファイル」をクリックして表示される画面から「オプション -> リボンのユーザー設定」で「開発」にチェックを入れると上部メニューに表示されるようになる。

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

4-2.モジュールの解放処理を行う
Visual Basic Editor は普段利用している Excel のシートとは別のウィンドウが表示され、ウィンドウの左側に開いている Excel に設定されているマクロの一覧や、マクロの付帯情報(プロパティ)が表示される。
反対に右側には実際にマクロをプログラムする入力ウィンドウや、マクロとして動作するボタンや入力フォームをデザインするウィンドウが表示される。
ここで起動時の警告ウィンドウを出さなくするためには Visual Basic Editor の左側にある Module{数値} と表示されているファイル名を選択し、右クリックすると下図のようにメニューが表示されるので「Module1 の解放」をクリックすうr。
もし複数のマクロプログラムが用意されている場合は Module{数値} が複数あり、数値はマクロが作成された 1 から連番となっているので順番に解放していく。

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

尚、「Module1 の解放」とは、設定しているマクロ消す行為であるため、必要な処理がプログラムされている場合は解放すると正常に動作しなくなる点に注意が必要である。
関連記事
PowerPoint で結合したセルを分割する方法 – Office ソフトの使い方(3)
PowerPoint は提案書やプレゼン資料作成に利用することが多く、Excel のように情報を整理して見やすくなるように表(テーブル)としてを扱うことができるが、Excel と違いセルの操作方法が異なるため PowerPoint で結合したセルを分割…
PowerPoint で行間を広げたり、狭めたりする方法 – Office ソフトの使い方(4)
PowerPoint でスライドに配置したテキストの行間(一行と一行の間の間隔)が広すぎたり、反対に狭すぎると読みづらくなり内容が頭に入らなくなるため、プレゼン資料や提案書はわかりやすく、印象に残るように文章内容やレイアウトの手…
PowerPoint で扇形の図形を作る方法 – Office ソフトの使い方(5)
PowerPoint には四角形や円など基本となる図形が既に用意されているので画面上部のリボンからすぐにスライドに配置できるが、円グラフでよく用いられるアーチ状の半円や扇形は基本図形に無いため、図形を組み合わせたり線種を利用して扇…