Franck Levequeは、ローカル宣言とグローバル宣言の違いを明確かつ簡単に示しています。
ただし、ほとんどの言語と同様に、VBAではパラメータをサブルーチンに渡すことができます。グローバル変数が唯一の選択肢または唯一の賢明な選択肢である場合があります。myVar
ただし、通常は、内で宣言try
し、パラメーターとしてに渡す方が適切displayVar
です。これにより、デフォルトでパラメータが値として渡されるため、displayVar
誤って変更されるのを防ぐことができます。myVar
サブルーチンでパラメーターの値を変更する場合は、パラメーターを参照として明示的に渡す必要があります。これは、ほとんどの最新のプログラミング言語に当てはまります。
Public
また、これらのサブルーチンが他のモジュールのサブルーチンに表示されることも意味します。Public
省略または置換された場合Private
、モジュール内でのみ表示されますtry
。displayVar
以下のコードでは、の値をmyVar
パラメーターとしてに渡しましたdisplayVar
。
Public Sub try()
Dim myVar As String
myvar = "hello world"
Call displayVar(myVar)
End Sub
Public Sub displayVar(Stg As String)
Call Msgbox(Stg, VBOKOnly)
End Sub