Property Set


Property Setステートメント

構文

[Public|Private|Friend][Static] Property Set name ([arglist,] reference)

Publicは省略可能です。すべてのモジュールのすべてのプロシージャから参照できるプロパティを宣言します。

Privateは省略可能です。Property Setを宣言したモジュール内でのみ参照できるプロパティを宣言します。

Friendは省略可能です。クラスモジュール内でのみ使用できます。プロジェクト全体からは参照できますが、インスタンスのコントロールからは参照できないプロパティを宣言します。

Staticは省略可能です。Property Set内のローカル変数の内容が保持されます。

nameには、宣言するプロパティの名前を指定します。

arglistは省略可能です。Property Setで宣言したプロパティを呼び出すときに引き渡す引数を指定します。

referenceには、オブジェクトへの参照を表す変数を指定します。

解説

Property Setは、プロパティの値としてオブジェクトへの参照を設定するプロシージャです。Propertyプロシージャで作成した新しいプロパティは、そのPropertyプロシージャが宣言されているモジュールのプロパティになります。

サンプル

次の例は、オブジェクトへの参照を設定するTargetFormプロパティを設定し参照します。このサンプルを実行するには、UserForm1が存在しなければなりません。

Private myForm As UserForm
Sub Sample()
    Set TargetForm = UserForm1
    MsgBox "ターゲットは" & TargetForm.Caption & "です"
End Sub
Property Set TargetForm(x As UserForm)
    Set myForm = x
End Property
Property Get TargetForm() As UserForm
    Set TargetForm = myForm
End Property