Excelマクロについて

『変数の宣言』の強制

wp-datacare

変数については今回で最後です。

今回は『変数の宣言』についてです。
Excelマクロでは、変数の宣言を省略する事ができます。

以下は変数の宣言を省略していません。

以下は省略しています。

Dim x As String が有るパターン、無いパターンです。
変数の宣言が無いパターンでも問題なく動作します。

変数の宣言を強制的に行わせる設定があります。
この設定を有効にすると、変数の宣言が無いとエラーになります。

エディタの設定では、絶対に[変数の宣言を強制する]を有効にして下さい。

理由はタイプミスを防げるからです。

[変数の宣言を強制する]を有効にするやり方は以下のとおりです。

エディタの[ツール]→[オプション] を開きます。

[編集]タブにある[変数の宣言を強制する]にチェックを入れて下さい。

[OK]をクリックすれば設定は以上です。
一度設定を行えば、今後全て有効になります。

今後、モジュールを追加すると自動的に
  Option Explicit(オプション エクスプリシット)
が記述されます。

今後はプロシージャ(マクロ)を作成する時には以下のようにOption Explicitの下に記述して下さい。

Option Explicit があり、変数の宣言が行われていない場合以下のようにエラーが発生します。
Dim x As String の宣言を行えばエラーは出ません。

それでは[変数の宣言を強制する]を有効にした方がいいのでしょうか。
それは、変数のタイプミスです。

下図の青枠は 変数 Uriage としています。
   赤枠は 変数 Uriaga とスペルミスしています。

セルA1には 0(ゼロ) と入力されます。

Option Explicit(変数の宣言を強制)が入力されていれば以下のようにエラーが表示され、ミスに気付く事ができます。

サンプルコードくらいの短いプログラムの場合は正常に動作しない原因追及も簡単です。

しかし、実務になると原因追及が困難になります。
場合によっては、ミスに気が付かない事もあります。

そのため、Option Explicit(変数の宣言を強制)の設定は大切です。
設定を有効にして下さい。

変数についての解説は、今回で終了です。

次回はFor~Nextステートメント(繰り返し処理)です。
For~Nextステートメントでは変数を使用します。
ここまで理解を進めて下さい。

ABOUT ME
酒見 拓也
酒見 拓也
代表取締役
パチンコ企業向けにExcelマクロを使って業務の自動化、効率化のやり方を発信しています。 企業向けに「Excelマクロ研修」も行っています。
記事URLをコピーしました