【Excel-VBA】Option Explicitは必ず付けよう~使い方を徹底解説!

2020年2月26日

モジュールにVBAを記述しているときに、モジュールの上部に表示される「Option Explicit」。

 

・この表示はいったいどんな意味があるの?

・またどのように利用するんだろう?

 

その使い方について解説していきましょう。

モジュール内のOption Explicitとは

この「Option Explicit」とは、簡単に言うのであれば、

 

「変数やAPI関数を記述する場所」です。

 

<Option Explicitとは・・・>

  • モジュール内の変数・API関数を表示する領域
  • Option Explicitを記載する場合、変数宣言が必須

 

一度この「Option Explicit」を記述することで、変数を宣言していない場合、

コンパイルすると、「変数が宣言されていませんよ。」とエラーが表示されます。

 

 

また逆にこの表示が記述されていないモジュールでは、変数の宣言がなくてもエラーが表示されないため、記述が曖昧な表示になることがあり、正しく処理が動作してなくても分析がしにくくなってしまいます。

 

そのため、このOption Explicitは、なるべく記述しておいた方がよいものとなります。

 

 

Option Explicitの画面イメージ

表示箇所は、下記が宣言セクションになります。

このOption Explicit部分に宣言してあげましょう。

 

Option Explicitの使い方

 

それでは、このOption Explicitの使い方について解説していきましょう。

Option Explicitは、主に変数やAPI関数を記述する際に使用しますが、その他にも下記のメリットがあります。

 

<Option Explicitの主な使い方と利用メリットとは>

  • モジュール内のWindows API関数
  • モジュール内の共通変数を宣言する
  • モジュール内であればCall文による変数引き渡しの宣言が不要
  • 変数の宣言が誤っていないかを確認できる環境を作るため

 

 

主に、上記4つの場合に、利用するとよいのですが、基本的に、プログラムを記述する場合には、このOption Explicitをあらかじめにセットするようにしてしまいましょう。

 

どんな時に使用するの?

このOption Explicitを使用するメリットには、主に下記の3つがあります。

 

<Option Explicitはどんな時に使用するの?>

  • 記述を丁寧にまとめる時
  • 変数の使い方が間違っていないかをエラー確認ができる
  • 同一モジュール内で変数を使用したい時

 

 

 

【記述の一例】

 

 

Option Explicitを使用しないとどうなるの?

変数を使用しないのであれば、こちらの表示は消しても構いません。

しかし、変数を宣言するのであれば、Option Explicitを記述してその上に変数を宣言するようにして下さい。

 

それは、なぜかって???

もし同じ変数の宣言が重複していたら、どうなると思いますか?

変数宣言した値に思ってもいない値が入ってきてしまいます。

下記をご覧下さい。

 

この場合には「Dim a as string」が重複しています。この記述だと、Option Explicitを使用していれば、「重複しています。」と、エラーが表示されます。

ここでもしOption Explicitを宣言していない場合、エラーも表示されません。これが非常に危険です。

だから、この宣言が必要なんです。

 

 

 

Option Explicitのおすすめな自動表示設定方法

そこでおすすめな設定があります。

それがこちら。

【自動表示の設定方法】

・「ツール」⇒「オプション」⇒「変数宣言を強制する」にチェックを入れる

 

 

 

 

まとめ

このように、「Option Explicit」は、VBAの変数宣言をする上で、間違いや重複がないかを自動チェックしてくれる。プログラマーに気付かさせてくれるので、非常に便利な機能の一つです。

だからこそ、プログラムを記述するタイミングであらかじめに記述してしまう基本事項の一つでもあります。

しっかり機能の意図を理解しながら、一つ一つ覚えていきましょう。

 

 

【おすすめ:WordPressテーマ 「WING(AFFINGER5)」について
     ※ブログを始めるなら絶対おすすめ【特典あり】


私も新たなサイト【育チルnet」にて、検索エンジンの上位の多くを占めると言われるSEO対策に強いWordpressテーマを導入してみました。

実際に利用した所感は、デザイン性能がかなり整っていますし、表示速度もやっぱりかなり速いです。人気なWordpressテーマなだけはあると感じました。

無料のテーマでも私は悪いとは思っていませんが、やはり検索エンジンからの評価はだいぶ違いました。

初めて数ヶ月ですが、もうすでに検索エンジンから大きく表示されるようになっています。

どうせやるなら、しっかりgoogle社からの評価を受けられる整えられた環境でブログ運営する方が絶対にいいと感じたため、当サイトをご覧下さった皆様にもお伝えさせて頂きました!

Wordpressテーマを新たにご検討方は、今しかない期間限定の特典も付いていますので、お早めにご確認下さい。

公式サイト



 ←ためになったら押してね^^