ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

VBAの変数宣言

   

VBAの変数宣言について

変数を暗黙的に宣言する

エクセル VBA の場合、明示的に変数宣言せずに変数を使用すると、バリアント型(Variant)として暗黙的に変数宣言されます。
ただし、バリアント型の変数は、他のデータ型で宣言した変数よりもメモリを多く使用します。また、変数名の競合によるエラーや入力ミスによるエラーを起こすことを防ぐため通常は、変数を明示的に宣言します。

強制的に、変数を明示的に宣言する(その1)

モジュールの宣言セクションに Option Explicit ステートメントを指定するとモジュール内のすべての変数の明示的な宣言が強制されます。

Option Explicit ステートメント

この時、宣言されていない変数名やスペルミスした変数名が検出されるとコンパイル時にエラーが発生します。

explicitステートメント エラーメッセージ

強制的に、変数を明示的に宣言する(その2)

VBE(Visual Basic Editor)の [ツール] の [オプション] からも設定可能で、ここで設定すると、すべての新規モジュールに対して、Option Explicit ステートメントを自動的に追加します。

【以下 設定方法】
  1. [ツール] から [オプション] を選んでクリックします。
    option explicit 01

  2. [オプション] ダイアログボックスが表示されるので、[編集] タブの [変数の宣言を強制する] のチェックボックスにチェックを入れて「OK」ボタンをクリックします。
    option explicit_02

  3. 新しく、標準モジュールを追加してみると
    option explicit_03

  4. 自動的に、モジュールの宣言セクションに Option Explicit ステートメントが追加されます。
    option explicit_04

 - VBA基本 , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

指定した数値を文字列に変換する(Str 関数)

Str 関数 の使い方 Str 関数は、数値・数式を文字列に変換して返す関数です …

色の設定(Color プロパティ・RGB 関数)

Color プロパティ Color プロパティは、指定したオブジェクトの色を取得 …

ある数値が、複数の範囲のどの範囲に含まれるかを示す文字列を返す(Partition 関数)

Partition 関数 の使い方 Partition 関数は、ある数値が、区切 …

ポイント単位の値に変換(CentimetersToPoints,InchesToPoints)

CentimetersToPoints メソッド センチメートル単位の値をポイン …

メッセージボックス使用例
メッセージボックスを表示(MsgBox関数)

MsgBox関数 【書式】 result = MsgBox ( Prompt [ …

文字列:文字列を検索してその最初の文字位置を返す(InStr 関数,InStrB 関数)

InStr 関数・InStrB 関数の使い方 【書式】 result = { I …

色の設定(ColorIndex プロパティ・Colors プロパティ)

ColorIndex プロパティ ColorIndex プロパティは、指定したオ …

Dictionary オブジェクト 使用例1
連想配列(Dictionary オブジェクト)

連想配列 連想配列とは、添字(キー)に文字列を使用することができる配列です。 V …

Math 関数( Abs,Atn,Cos,Exp,Log,Rnd,Sgn,Sin,Sqr,Tan )

Abs 関数 【書式】 value = Abs ( number ) 【引数・戻 …

演算子の優先順位
VBA の演算子(演算子の優先順位)

演算子の優先順位 演算子の優先順位とは、1つの式の中に演算子が複数ある場合、どの …