Excel VBA ベーシック 模擬問題 模擬試験

Excel VBA ベーシック 模擬問題 ランダム順出題 ⓵ 第13問

以下のコードにおいて、モジュールレベル変数「N」の宣言で使用する空欄に入るステートメントを 選択肢より2つ解答しなさい。

 

Option Explicit

【 空欄①  】 N As Long

Sub Exam1()

 N = 10

End Sub

Sub Exam2()

 MsgBox N

' Nはこのプロシージャからもアクセス可能

End Sub

 

 

1.Public

2.Dim

3.Global

4.Private

 

正解

2、4

解説

【5章 変数と定数】

【モジュールレベル変数】

【変数のスコープ、モジュールレベル変数】

変数には適用できる範囲が決まっています。

どの場所で変数を宣言したかやどの使用ステートメントによって変数の適用範囲が決まります。

適用範囲と使用したステートメントの表をまとめましたのでご確認ください。

変数 変数の適用範囲と使用ステートメント
ローカル変数 【宣言場所】プロシージャ内で宣言する。

【適用範囲】宣言したプロシージャ内で適用

【使用ステートメント】Dimステートメント

・Dim 変数名 As 変数の型

 

モジュールレベル変数 【宣言場所】宣言セクションで宣言する。

【適用範囲】宣言したモジュールの全プロシージャで適用

*他のモジュールは適用範囲外です。

【使用ステートメント】Dim、Privateステートメント

・Dim 変数名 As 変数の型

・Private 変数名 As 変数の型

パブリック変数 【宣言場所】宣言セクションで宣言する。

【適用範囲】宣言したモジュールや他のモジュールでも適用

【使用ステートメント】Publicステートメント

Public 変数名 As 変数の型

 

●宣言セクションの位置とはOption Explicitからプロシージャ名までの間ことです。

Option Explicit

宣言セクション範囲

Sub Exam1()

【コード解説】

以下のコードにおいて、モジュールレベル変数「N」の宣言で使用する空欄に入るステートメントを 選択肢より2つ解答しなさい。

 

Option Explicit

 Private N As Long

Dimでもモジュールレベル変数になります。

Sub Exam1()

 N = 10

’変数に値を代入する。

End Sub

Sub Exam2()

 MsgBox N

' Nはモジュールレベル変数ですのでこのプロシージャからもアクセス可能です。

End Sub