KENスクールブログ | パソコン教室・パソコン講座なら個別指導のKENスクール

BLOGKENスクールブログ

KENスクールの動画配信サービス「KEN×ONLINE」

laptop-340721_640

Excel VBAでの変数の適用範囲について記載します。
変数は、宣言した場所によって利用できる適用範囲が決まっています。

① プロシージャ内だけで使用できる変数

プロシージャ内で作成された変数は他のプロシージャでは使用ができません。
サンプルで確認しましょう。
img1

sample1プロシージャでmessage変数が使用できています。
img2

sample2プロシージャを実行するとエラーになります。
img3
sample1プロシージャ内で宣言したmessage変数をsample2プロシージャで使用しているのでエラーになります。

② モジュール内の全てのプロシージャ内で使用できる変数

モジュールの宣言セクションでPrivate宣言された変数はモジュール内の全てのプロシージャで使用できます。
サンプルで確認しましょう。
img4

sample1プロシージャ、sample2プロシージャでmessage変数が使用できています。
img5

img6

③ 全てのモジュール内で使用できる変数

モジュールの宣言セクションでPublic宣言された変数は全てのモジュール内で使用できます。
サンプルで確認しましょう。
img7

sample1プロシージャ、sample2プロシージャ、sample3プロシージャで変数が使用できています。
img8

img9

img10

変数の適用範囲と宣言する場所をまとめた表になります。

変数宣言 宣言する場所 適用範囲
Dim 変数名 As 変数の型 プロシージャ内 プロシージャ内
Private 変数名 As 変数の型 宣言セクション モジュール内の全てのプロシージャ
Public 変数名 As 変数の型 宣言セクション 全てのモジュール内

今回ご紹介した内容はExcel VBA Standard試験対策の範囲となります。

この記事に関連する講座

資格取得でオフィススキルに100%の自信を!!

詳しくはこちら