VBA内でOption Explicitを記述しておくと、必ず変数の宣言をしなければエラーになります。
Option Explicitは記述しなくてもいいという人もいます。
しかし、過去に
エラーの特定が困難で、右往左往しまくり、結局、、、
変数の宣言をしていないのが原因だった!
というイヤーな経験があるので、必ずOption Explicitは記述するようにしています。
自分で手入力すると忘れることもあるので、Excelの設定におまかせしちゃいます。
< スポンサーリンク >
Option Explicit自動記述設定
Visual Basic Editorでツール→オプション
変数の宣言を強制するにチェックを入れ、OKボタンを押す。
これで勝手にOption Explicitが記述されます。
構文
Option Explicit ステートメント
Option Explicit
モジュール内のすべての変数に対して、明示的な宣言を強制します。モジュール レベルで使用します。
解説
Option Explicit ステートメントを使う場合は、モジュール内のどのプロシージャよりも前に記述する必要があります。
モジュールで Option Explicit ステートメントを記述する場合、変数は、Dim、Private、Public、ReDim、Static などの各ステートメントで明示的に宣言する必要があります。宣言されていない変数名を使うと、コンパイル時にエラーが発生します。
Option Explicit ステートメントを使わない場合、Deftype ステートメントで既定のデータ型が指定されていないと、明示的に宣言されていない変数のデータ型は、すべてバリアント型 (Variant) になります。
メモ
Option Explicit ステートメントを利用して、既存の変数名の入力ミスや、変数の適用範囲 (スコープ) がわかりにくいコード内で変数名の競合を避けることができます。
こんな記事も書いています