Excel VBA 数字随机分组的问题
展开全部
问题这么又变了
你前面说的100个取90个
总共有17310309456440种组合
图片中的T是EXCEL进行1000³次计算的时间(在内存),18.78秒
按我的电脑运行的话,得
17310309456440 * 90 ÷1000³ * 18.78÷3600个小时
也就是8127.19个小时
要差不多一年
如果仅仅是上面的数组随机打乱次序的话
用下面的代码
Sub fdsa()
Dim arr(1 To 10, 1 To 10)
Dim i As Byte
Dim j As Byte
For j = 0 To 9
For i = 0 To 9
arr(i + 1, j + 1) = j + i * 10
Next
Next
For i = 1 To 10
For j = 1 To 10
ii = Int(Rnd * 10 + 1)
jj = Int(Rnd * 10 + 1)
temp = arr(ii, jj)
arr(ii, jj) = arr(i, j)
arr(i, j) = temp
Next
Next
[a1].Resize(10, 10) = arr
End Sub
更多追问追答
追问
非常感谢您的回答。我的意思应该就是100取90的组合,如果时间还是不现实的话,是否可以比如我今天运算1小时,然后暂停,明天或者后天有空继续接着第一天的结果继续运算。。还有,本人对EXCEL基本不懂。。你是否可以教如何把这些代码放入EXCEL。。或者直接把成品发到邮箱akason@qq.com里,谢谢,端午节快乐
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询