- 帖子
- 549
- 主題
- 152
- 精華
- 0
- 積分
- 691
- 點名
- 0
- 作業系統
- WIN7
- 軟體版本
- OFFICE 2010
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2013-8-10
- 最後登錄
- 2022-9-7
 
|
小弟提供拙見,下列是10取4的方式
但要如何從10取1到10取10?
總不能寫了下方的程式碼,然後寫十遍吧= =?- Sub 排列組合_不重複()
- Dim ar(), br(), x&, y&, z&, n&
- ReDim br(1 To Application.Combin(10, 4), 1 To 4)
- ReDim ar(1 To 10, 1 To 1)
- For i = 1 To 10
- ar(i, 1) = i
- Next
- For w = 1 To UBound(ar) - 3
- For x = w + 1 To UBound(ar) - 2
- For y = x + 1 To UBound(ar) - 1
- For z = y + 1 To UBound(ar)
- n = n + 1
- br(n, 1) = ar(w, 1)
- br(n, 2) = ar(x, 1)
- br(n, 3) = ar(y, 1)
- br(n, 4) = ar(z, 1)
- Next
- Next
- Next
- Next
- Range("a2").Resize(n, 4) = br
- MsgBox "操作完成,共生成" & n & "個組合"
- End Sub
複製代碼 |
|