EXCEL求组合结果
发布网友
发布时间:2022-09-09 00:56
我来回答
共3个回答
热心网友
时间:2024-02-15 02:52
亲,这个可以写公式,但千万不要用公式,巨慢!!!吃顿饭工夫都跑不完~~~~~~~
用VBA吧,见附件。代码如下。
Sub zuhe20()
Dim i, j, k, l, m, n, o, p, q As Double
Dim rg() As Double
ReDim rg(1 To Application.WorksheetFunction.Combin(20, 8), 1 To 8)
Range("A:C").Delete
For i = 1 To 20 - 7
For j = i + 1 To 20 - 6
For k = j + 1 To 20 - 5
For l = k + 1 To 20 - 4
For m = l + 1 To 20 - 3
For n = m + 1 To 20 - 2
For o = n + 1 To 20 - 1
For p = o + 1 To 20
q = q + 1
rg(q, 1) = i
rg(q, 2) = j
rg(q, 3) = k
rg(q, 4) = l
rg(q, 5) = m
rg(q, 6) = n
rg(q, 7) = o
rg(q, 8) = p
Next p
Next o
Next n
Next m
Next l
Next k
Next j
Next i
Range("A1:H" & UBound(rg, 1)) = rg
End Sub追问谢谢,但是据我所知,EXCEL只可以延升到6万行吧,这个有12万多行,EXCEL可以容得下吗
追答2003版才有6万多行,2007版以上都是一百多万行。
财富多少不重要,解决问题的过程才是快乐的。
热心网友
时间:2024-02-15 02:52
用VBA处理一下吧,在20个数中逐一选择出不重复的8 个数。
但125970个结果,不要说写程序,就是要运行也要相当长的一段时间,你的5分也太有价值了。
热心网友
时间:2024-02-15 02:53
代码已完成。
希望对你能有所帮助。追问如何查看你的代码?