基本的に、パラメータの1つが標高である地理空間条件文を記述するクラスを作成しようとしています。 AltitudeにはMin、Max、Units、Invertの4つのプロパティがあり、クラスを2層のプロパティにするようにしています。プロパティを持つプロパティを持つVBAクラス
私が探しているが、私はそれを実装する方法を考え出す苦労を抱えている効果であるIE
Dim blah as qClass
Set blah = New qClass
blah.Altitude.Min = 100
。 (普通のVBA経験ですが、クラスに入るのは初めてです)
マイ・ソリューション: 各パラメータに使用するMin/Max/Unit/Invertの引数を持つ汎用クラスを作成しました。一度再使用されます。
設定クラス
Private pMin As Integer
Private pMax As Integer
Private pUnit As String
Private pInvert As Boolean
Public Property Get Min() As Integer
Min = pMin
End Property
Public Property Get Max() As Integer
Max = pMax
End Property
Public Property Get Unit() As String
Unit = pUnit
End Property
Public Property Get Invert() As Boolean
Invert = pInvert
End Property
Public Property Let Min(Value As Integer)
pMin = Value
End Property
Public Property Let Max(Value As Integer)
pMax = Value
End Property
Public Property Let Unit(Value As String)
pUnit = Value
End Property
Public Property Let Invert(Value As Boolean)
pInvert = Value
End Property
親クラスの設定あなたがこれを行うにしたい場合は
'CPA Range Property
Public Property Get CPARange() As cSettings
If pCPARange Is Nothing Then Set pCPARange = New cSettings
Set CPARange = pCPARange
End Property
Public Property Set CPARange(Value As cSettings)
Set pCPARange = Value
End Property
のクラスの(http://www.cpearson.com/excel/Classes.aspx)[これは優れたチュートリアルです]。両方のクラスを作成してからメインクラス(サンプルのqClass)でサブクラス(例の高度)をインスタンス化するだけです。 – Tim