トップ > 資格を活かすには > やってみよう!Excel VBAで業務改善! > 森川くんのVBA日記編: 第11話「変数の適用範囲」2/4 :変数の初期値

やってみよう!Excel VBAで業務改善! 森川くんのVBA日記編|第11話 「変数の適用範囲」

変数の初期値

「そのとおりよ。
スコープも同様、チームで開発するときは、事前にルール化しておく必要があるわ」

岬さんはパソコンにカタカタと、追加で文章を入力していきます。



ローカル変数     → 基本的には、これを使って開発する

モジュールレベル変数
パブリック変数    → できるだけ、引数と戻り値で代用するようにする
             どうしても使用するときは、初期値に注意


「こんな感じかな?
モジュールレベルやパブリック変数はできるだけ使わず、
ローカル変数や引数・戻り値を使って、プログラミングするのが保守性の良いコードね」

「なんでモジュールレベルやパブリック変数は、使わないほうがいいんですか?」

「一番の理由は、変数の初期値の問題ね。
ローカル変数は、プロシージャの終了と同時に初期化されるけど、
モジュールレベルやパブリック変数は、前のマクロで格納した値が残ってることがあるのよ。
……だから常に変数の初期値について、意識する必要があるってわけ。
…数が増えてくると、手に負えなくなるわよ」

森川くんは、なるほどという顔をしてうなずきます。

「確かに…
これは気をつけないと、思いがけないバグの原因になりますね。
チームで開発するときは、注意が必要です…」

ちょうどその時、昼休みを告げるチャイムがオフィスに鳴り響きました。

「あら、もうお昼?続きは、午後ね。
今日はあたし、用事があるから外出するの。
……悪いけど森川くん、ひとりでお昼、食べてきてくれる?」

「はい、大丈夫っス。
もう、会社の食堂にも慣れました」

森川くんは少し残念そうな顔をしながら、そう答えました。

一覧にもどる