プログラムの入れ物を作る

モジュールの作成解説とSubプロシージャの空コード

'プログラムコードの入れ物
Sub プログラム名()

’↑この間にプログラムコードを入力する↓

End Sub

Subプロシージャという、VBAの最小プログラム単位の作成です。
このSub ~ End Subまでの間に実行するプログラムコードを入力します
VBAはこのプロシージャという単位でプログラムが実行されます
また、Subの隣の「プログラム名」は任意の名称に変更してください
日本語の使用が可能です

まずは、標準モジュールの作成を行います。この標準モジュールに通常はプロシージャの作成を行っていきます。
この標準モジュールは、メニューボタンから簡単に作成可能です。

標準モジュールの作成手順

ツールバーにある「新しい標準モジュール」をクリックすると、下のプロジェクト内に新しく「Module~」と作成されます
ツールバーにボタンが無い場合は、挿入タブから操作してください

Subプロシージャの作成手順

モジュールが作成されると、そのモジュールがアクティブになって右側のウィンドウにコードウィンドウが表示されますので、そこに例コードを貼り付けします。
これで、プログラムの入れ物が完成しましたので処理の作成を行っていきましょう

VBAを使用できるようにする

ExcelでVBAを使用できるようにする設定の解説

Excelで開発タブを表示する

Excelの初期設定では、VBAを扱うことができませんので、設定を変更する必要があります。これに関してはもちろんVBAで行うことはできませんので、必ず手動で行う必要があり、オプション設定から行います
これはバージョンによって微妙な違いがあるので注意してください
基本的に2007以降はリボンというメニューが追加されたため、全て開発タブの表示が必要になります。2003以前はこの設定はありません

Excelのオプションの開き方
開発タブの表示設定

Excelのオプションから「リボンのユーザー設定」を選択し、その中から左のリストにある開発タブのチェックボックスにチェックを入れてOKボタンをクリックすれば完了です
開発タブが表示され、その1番左の「VisualBasic」から開くことができます
ショートカットキーは「Alt+F11」です。これはVBEの画面とExcelの画面を交互に切り替えることができます

開発タブが表示されている状態

セキュリティの設定

マクロ無効時の警告メッセージ

また、マクロのセキュリティ設定も必要な場合は行います
信頼済みになっていないブックでは画像の様に警告が表示されてマクロが無効の状態でブックが開かれます
2010以降は一度マクロを有効にすると、自動的に信頼済みに登録されます。 この際に登録されるのはファイル名なので、ファイル名を変更すると再度警告が表示されます
また、ネットワーク上にあるファイルを開いた場合は、自動的に登録はされずメッセージが表示されますので、登録しても問題なければそのまま登録してください
ただ当然ですが有効になるのはそのPCだけなので、逆に一時的に開くだけなら有効にして登録はキャンセルして使用することもできます

セキュリティのレベルの設定も行うことができますが、これはあまり変更することはお勧めしません
特に2010以降は自動的に登録されていくのでそれほどストレスなくマクロブックを扱えるはずです

Excel2007でのマクロ無効時の警告メッセージ

画像はExcel2007での警告時のものです。2007以前では、毎回有効化する必要があり面倒です
その場合は信頼できる場所という設定がありますので、そちらを設定してください
この設定は2010以降も同様に行えます

セキュリティセンターの開き方

オプションの「セキュリティセンター」を選択し、右下の「セキュリティセンターの設定」をクリックします

信頼できる場所の追加方法

次に「信頼できる場所」を選択し、「新しい場所の追加」をクリックします

信頼できる場所のサブフォルダの設定

開いた画面で指定の場所の絶対パスを入力します
この時に、サブフォルダーも含めるとこのフォルダ以下の全てのフォルダが信頼できる場所に登録されます

信頼できる場所のネットワーク上の設定

また、ネットワーク上のフォルダを指定するには「プライベートネットワーク上にある信頼できる場所を許可する(推奨しません)」にチェックを入れます
推奨されてません、2010以降の自動登録はできるんやけどね

特に2003以前は信頼できる場所が決まっていたので、非常にセキュリティ設定が面倒でした。さらに推奨されませんが、自分の作ったものしか使わない場合はセキュリティレベルを「低」にしてましたね

Excel2003でのマクロセキュリティの設定

ツールタブの中のマクロから「セキュリティ」を選択する

Excel2003でのマクロセキュリティレベルの設定

すでに2003を使える環境になく、以前撮っておいた画像でしたが、やはり「低」です。当時はどれほどのことをVBAで出来るのか分かってなかったので安易に行ってましたね、怖い

マクロ有効ブックについて

ここまでの操作でとりあえず処理作成の準備は整いました。あとは処理を作成していくだけですが、最後に重要な点です
Excel2007以降はセキュリティ強化のためにファイルの拡張子が変わりました。それに伴いマクロが入ったものと、入っていないもので拡張子が違います
ファイルを開く前にマクロが入っているか分かるようになっているのです
そして、これは保存形式にあてはまりますが、標準の形式ではマクロは保存されない仕様になりましたので、保存する際にはマクロ有効ブックで行う必要があります

マクロ有効ブックでない時の警告

画像の様に標準形式でマクロ有効ブックを保存しようとするとメッセージが表示されます。このメッセージを「はい」を選択してしまうとあなたの作ったマクロはこの世から消えてしまいます
Excel2003から移行してすぐの頃、これに一体何度泣かされたか分かりません。作成最初に名前を付けて保存する癖を付けてからはありませんが、初心者の方は本当に気を付けてください。この「はい」は本当に恐ろしいです・・・