【VBA】作成するモジュールと変数のスコープについて

作成するモジュール

●MainModule
・ボタン等から呼び出すSubプロシージャを定義する
・Subプロシージャ内で以下を実施する
 ┗入力チェック
 ┗別モジュールに定義したFunctionの呼び出し
・入力チェックを関数化する場合はprivateにする。 MainModule内でのみ呼び出し可にするため

●createDicModule
・シート上の情報を設定したDictionaryを作成し呼出元へ返すFunctionプロシージャを定義する
・Subプロシージャから呼び出されるFunctionプロシージャのみ、Publicにする

●createCsvModule
・Csvファイルを作成するFunctionプロシージャを定義する
・Subプロシージャから呼び出されるFunctionプロシージャのみ、Publicにする

変数のスコープについて

極力スコープを狭くする
・1つのプロシージャ内でのみ使用する変数は、ローカル変数にする
・1つのモジュール内で使用、かつ複数のプロシージャで使用する変数は、プロシージャの外側で
 private変数にする
・基本的にPublic変数(グローバル変数)にしない。

タイトルとURLをコピーしました