SSブログ

VBA 変数宣言を強制する設定 [VBA]

 ACCESSのVBAでプログラムを行う際、初期設定は変数宣言をしなくても良い設定になっています。
 だからといって、変数宣言を省略することが推奨されているわけではありません。

 変数宣言を省略した場合、プログラム中で変数が登場したタイミングで、変数が生成されます。Dimによる宣言では、データ型を明示することができますが、宣言を省略した場合はなんでも扱えるタイプの変数になります(バリアント型)。

 一見便利そうですが、次のような問題が起こる場合があります。
 バリアント型の変数なので、何が代入されてもエラーになりません。プログラマーの予想外の値が代入されてしまっても、エラーにならずに実行され続けます。
 また、どんな名前の変数でも、コードに出てきたら自動で宣言されてしまうので、変数名をタイプミスした場合、そのまま実行できてしまうので、発見が遅れることがあります。
 変数宣言を強制している場合、宣言していない変数名があると、エラーになります。

 上記の事から、VBA(VB)で開発を始める際は、最初に変数宣言を強制する設定を行うことをお勧めします。
 設定方法は、以下の通り。


 VB Editorのメニューから、「ツール」-「オプション」を選択します。

 「編集」タブの、「変数の宣言を強制する」にチェックを付けて、「OK」をクリックします。

 この設定を行った以降、新規にモジュールが作成されるときに、コードの冒頭に「Option Explicit」と言うステートメントが自動で設定されます。
 このステートメントにより、変数宣言が強制される設定になります。

 ただし、すでに作成されていたモジュールに関しては、自動で追加されません。
 その場合は、手動で書き加えて下さい。


nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。
※URL(リンク)は記述できません。

トラックバック 0

トラックバックの受付は締め切りました

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。