このページの内容について
このページは、VBAエキスパート(ExcelVBAベーシック)試験合格講座(再編集版)の第三回記事です。公式テキスト第3章「モジュールとプロシージャ」の内容について解説します。自分でも手を動かしながら読み進めてください。
モジュール
モジュールとは
マクロが記述される場所のことをモジュールと呼びます。
モジュールの種類
標準モジュール
最も汎用的に使えるモジュールであり、基本的にマクロはここに記述します。

ユーザーフォーム
試験範囲ではありませんが、他の高級なプログラミング言語にはないExcelVBA(マクロ)の強みはこのユーザーフォームにあります。プログラミング素人でも直感的にGUI(グラフィカルユーザーインターフェース)を作成することができるモジュールです。

クラスモジュール
こちらも試験範囲ではありません。このモジュールはプログラミング上級者向けです。クラスモジュールで作成可能な機能はすべて標準モジュールで作成することができます。そのため、クラスモジュールを使用せずともかなり複雑な機能を持ったマクロを作成することも可能です。クラスとは一言では表現が難しいですが、誤解を恐れずにいうとオブジェクトを自作することができるモジュールです。

ブックモジュール
ブックを開くと同時に発動するマクロや、ブックの保存をトリガー(発動条件)とするマクロを作成することができるモジュールです。試験範囲ではありませんが、別途解説します。

シートモジュール
セルが変更されると発動するマクロや、別シートへ操作が移ることをトリガー(発動条件)とするマクロを作成することができるモジュールです。試験範囲ではありませんが、別途解説します。

モジュールの操作
標準モジュールを挿入する
プロジェクトエクスプローラーで右クリック⇒「挿入」⇒「標準モジュール」を選択する
VBEを起動(「Alt」+「F11」)し、プロジェクトエクスプローラーで右クリックして表示されるメニューから「挿入」⇒「標準モジュール」を選択します。

標準モジュールが作成されました

標準モジュールの名称を変更する
プロパティウィンドウを開いておく
先に「表示」タブからプロパティウィンドウを開いておきます。「F4」でも開くことができます。
プロパティウィンドウでオブジェクト名を編集する
作成したモジュールがプロジェクトエクスプローラーで選択された状態でプロパティウィンドウのオブジェクト名を編集します。

標準モジュールを削除する
プロジェクトエクスプローラーで右クリック⇒「~解放」を選択する
プロジェクトエクスプローラーで右クリック「<モジュール名>の解放」を選択します。

ダイアログボックスが表示されるため「はい」か「いいえ」を選択する
次に表示されるダイアログボックスで「いいえ」を選択するとそのまま標準モジュールが削除されます。エクスポート(Excel外に保存)しておきたい場合は「はい」を選択し、任意の場所へ保存します。

標準モジュールをコピーする
標準モジュールをコピーする方法は2つあります。ひとつはエクスポートしたモジュールをインポートすることです。コピー先が別ブックである場合、ドラッグ&ドロップでもコピーが可能です。
外部保存してあるファイルをインポートする

ドラッグ&ドロップでモジュールをコピーする

補記:VBEからシート名を変更してみる
プロパティウィンドウを使うとVBEからシート名を変更することもできます。
「Microsoft Excel Objects」のシートモジュールを選択する

プロパティウィンドウの「Name」を任意の名称へ変更する

シート名が変更されました

Comment