Sub 计算()
Dim jg(1 To 5000), arr
Dim d, r%, i%
Set d = CreateObject("Scripting.Dictionary")
arr = Array(200, 123, 12, 34, 12, 76, 89, 123, 32, 123, 44)'我模拟的原始数据
For r = 1 To 5000 ’循环5000次
’=============下面5行乱序生成一个11位数组,通过对该数组的顺序引用达到乱序引用原始数据的目的
Do Until d.Count = 11
d(Int(Rnd() * 11) + 1) = ""
Loop
ir = d.keys
d.RemoveAll
'===============================这下面三行要换成你计算过程=
For i = 0 To 10
jg(r) = arr(ir(i) - 1) + jg(r)
Next
'========================上面这一段要换成你的计算过程
Next
[a1].Resize(5000, 1) = Application.Transpose(jg) '把5000个结果赋值a1:a5000区域
End SubI