VB6/VBAでは、特定のSub
またはFunction
メソッドの外部でモジュールレベルの変数を宣言できます。モジュール内でPrivate
とPublic
を使用したことがあるので、次のように理解します。
Public
-モジュール内のすべてのコードとモジュール外のすべてのコードに表示され、基本的にグローバルになります。Private
-モジュール内のコードにのみ表示されます。モジュラー変数の修飾子としてDim
とGlobal
を使用できることに気付きました。モジュラーフィールドのアクセス修飾子として使用する場合、Dim
およびGlobal
はそれぞれPrivate
およびPublic
と異なりますか?もしそうなら、それらはどう違うのですか?
Dim
とPrivate
は同じように機能しますが、一般的な規則では、モジュールレベルでPrivate
を使用し、Sub/FunctionレベルでDim
を使用します。 Public
とGlobal
は機能がほぼ同じですが、Global
は標準モジュールでのみ使用できますが、Public
はすべてのコンテキスト(モジュール、クラス、コントロール、フォームなど)Global
は、古いバージョンのVBからのものであり、下位互換性のために保持されている可能性がありますが、Public
によって完全に置き換えられました。 。