大体でIT
大体でIT
Excel VBAで、変数の適用範囲(スコープ)を宣言する方法について、ご紹介します。変数のスコープは、3種類あります。「同じプロシージャ内」、「同じモジュール内」、「すべてのモジュール」で適用できます。適用範囲を意識して変数を宣言していきましょう。
この記事では、変数の宣言する方法について、ご紹介します。
変数を宣言するには、「Dim」と「Public」があります。
変数を使う際には、適用範囲(スコープ)を意識する必要があります。
- 同じプロシージャ内(プロシージャ内でDim)
- 同じモジュール内(一番上でDim)
- すべてのモジュール(一番上でPublic)
変数をどの範囲で使いたいかを意識して、変数を宣言していきましょう。
では、変数を宣言する方法について、解説していきます。
Sub TEST1()
'変数を宣言
Dim A
A = 1
MsgBox A
End Sub
変数を宣言して出力
変数を宣言する際には、適用範囲(スコープ)を意識する必要があります。
- 同じプロシージャ内(プロシージャ内でDim)
- 同じモジュール内(一番上でDim)
- すべてのモジュール(一番上でPublic)
プロシージャ内で「Dim」を宣言すると、同じプロシージャ内で変数を使えます。
同じプロシージャ内
一番上で「Dim」を宣言すると、同じモジュール内で変数を使えます。
同じモジュール内
一番上で「Public」を宣言すると、すべてのモジュール内で変数を使えます。
すべてのモジュール
プロシージャ内で、「Dim」を使って宣言してみます。
同じプロシージャ内で使える
プロシージャ内で「Dim」を宣言すると、同じプロシージャ内で変数を使えます。
別のプロシージャでは使えない
プロシージャ内で「Dim」を宣言した場合では、別プロシージャで変数は使えません
同じプロシージャ内で「Dim」を使った場合は、同じプロシージャ内のみ有効です。
同じモジュール内で使える
一番上で「Dim」を宣言すると、同じモジュール内で変数を使えます。
別モジュールでは使えない
一番上で「Dim」を宣言した場合では、別モジュールで変数は使えません
一番上で、「Dim」を宣言した場合は、同じモジュール内でのみ変数が有効になります。
一番で「Public」を使って、変数を宣言してみます。
別モジュールで変数を使う
一番上で「Public」を使って変数を宣言すると、すべてのモジュールで変数を使うことができます。
別モジュールでも変数を使える
一番上で、「Public」を使って変数を宣言した場合は、すべてのモジュールで変数が有効になります。
ただ、「Public」を使う場合は、思わぬ結果にならないように適用範囲を意識して使いましょう。
この記事では、変数を宣言する方法について、ご紹介しました。
変数を宣言するには、「Dim」と「Public」があります。
変数を使う際には、適用範囲(スコープ)を意識する必要があります。
- 同じプロシージャ内(プロシージャ内でDim)
- 同じモジュール内(一番上でDim)
- すべてのモジュール(一番上でPublic)
変数をどの範囲で使いたいかを意識して、変数を宣言していきましょう。
参考になればと思います。最後までご覧くださいまして、ありがとうございました。