我正在使用Excel VBA在那里我有很多的数据集的一个项目,每一个填充了一系列的"病人",这有很多的参数(如治疗,预后等).为了解决这个问题,我打算创建一个名为"患者"的类,其中包含治疗和结果等属性.然后创建一个名为"dataset"的类,其公共属性为"patient".我已经创建了类,我可以实例化一个数据集对象.但是,如何在数据集对象中实例化患者对象,或理想情况下是一组患者对象?
数据集类模块:
Private pNumber As Integer
Public Patient As Patient
Public Property Get Number() As Integer
Number = pNumber
End Property
Public Property Let Number(p As Integer)
pNumber = p
End Property
Run Code Online (Sandbox Code Playgroud)
患者类模块:
Private pID As Integer
Private pTreatment As Boolean
Private pResponse As Single
Public Property Get ID() As Integer
ID = pID
End Property
Public Property Let ID(p As Integer)
pID = p
End Property
Public Property Get Treatment() As Boolean
Treatment = pTreatment
End Property
Public …Run Code Online (Sandbox Code Playgroud) 学习VBA for Excel,我试图在不使用循环的情况下完成我的编码.作为练习,将两个相邻范围的数字相乘,我想出了这个:
Sub multiply_range()
Dim a, b, c As Range
Set a = Range("a1:a5")
Set b = Range("b1:b5")
Set c = Range("c1:c5")
a.Value = Evaluate("row(" & a.Address & ")")
b.Value = Evaluate("row(" & b.Address & ")")
c.Value = Evaluate(a.Address & "*" & b.Address)
End Sub
Run Code Online (Sandbox Code Playgroud)
哪个效果很好.现在我想做类似的事情,但改为使用数组.从这段代码开始:
Sub multiply_array()
Dim aArr(), bArr(), cArr()
ReDim aArr(5), bArr(5), cArr(5)
For i = 0 To 4
aArr(i) = i + 1
bArr(i) = i + 1
Next
For i = 0 To 4 …Run Code Online (Sandbox Code Playgroud)