option_explicit

VBA内でOption Explicitを記述しておくと、必ず変数の宣言をしなければエラーになります。

vba,Option Explicit

 

Option Explicitは記述しなくてもいいという人もいます。

 

しかし、過去に

エラーの特定が困難で、右往左往しまくり、結局、、、

変数の宣言をしていないのが原因だった!

というイヤーな経験があるので、必ずOption Explicitは記述するようにしています。

 

自分で手入力すると忘れることもあるので、Excelの設定におまかせしちゃいます。

< スポンサーリンク >





Option Explicit自動記述設定

Visual Basic Editorでツール→オプション

vba,Option Explicit

 

変数の宣言を強制するにチェックを入れ、OKボタンを押す。

vba,Option Explicit

 

これで勝手にOption Explicitが記述されます。

 

構文

Option Explicit ステートメント

Option Explicit

モジュール内のすべての変数に対して、明示的な宣言を強制します。モジュール レベルで使用します。

 

解説

Option Explicit ステートメントを使う場合は、モジュール内のどのプロシージャよりも前に記述する必要があります。

モジュールで Option Explicit ステートメントを記述する場合、変数は、Dim、Private、Public、ReDim、Static などの各ステートメントで明示的に宣言する必要があります。宣言されていない変数名を使うと、コンパイル時にエラーが発生します。

Option Explicit ステートメントを使わない場合、Deftype ステートメントで既定のデータ型が指定されていないと、明示的に宣言されていない変数のデータ型は、すべてバリアント型 (Variant) になります。

 

メモ

Option Explicit ステートメントを利用して、既存の変数名の入力ミスや、変数の適用範囲 (スコープ) がわかりにくいコード内で変数名の競合を避けることができます。

 

< スポンサーリンク >※広告先のお問い合わせは広告主様にお願いします