您已定义
clientCopy
作为一个
Variant
,必须在运行时为每个方法调用解析。请更改为类型
Client
重新计时。
好的,我已经重新阅读了问题和评论,为了加快循环,因此对其进行更改
Option Explicit
Sub start()
Application.ScreenUpdating = False
Dim j As Long
Dim clientsColl() As Client
ReDim clientsColl(1 To 100000) As Client
For j = 1 To 100000
Set clientsColl(j) = New Client
clientsColl(j).setClientName = "Client_" & j
Next
'Dim clientCopy As Variant
Dim clientCopy As Client
MsgBox ("simulations start")
Dim i As Long
For i = 1 To 100
Dim lClientLoop As Long
For lClientLoop = LBound(clientsColl) To UBound(clientsColl)
'For Each clientCopy In clientsColl
Set clientCopy = clientsColl(lClientLoop)
clientCopy.setSimulationCount = 100
clientCopy.generateRandom
Next
Next
Application.StatusBar = False
Application.ScreenUpdating = True
MsgBox ("done")
End Sub