比如6组数字或字母12 23 b2 33 aa 44 qq如何用excel做排列组合 ,总共情况应该是有6*5*4*3*2*1=720种 怎么用excel把所有情况列出来
可以使用宏来解决生成。
Sub arrange()Dim my_String As String
my_String = "12 23 b2 33 aa 44 qq"
Dim my_Arr(0 To 6)
For i = 0 To 6
my_Arr(i) = Split(my_String, " ")(i)
Next
Dim my_Arrange As String
my_Arrange = ""
Dim my_Row As Single
my_Row = 1
Dim N1, N2, N3, N4, N5, N6, N7 As Single
For N1 = 0 To 6
For N2 = 0 To 6
For N3 = 0 To 6
For N4 = 0 To 6
For N5 = 0 To 6
For N6 = 0 To 6
For N7 = 0 To 6
Cells(my_Row, 1) = my_Arr(N1) & my_Arr(N2) & my_Arr(N3) & my_Arr(N4) & my_Arr(N5) & my_Arr(N6) & my_Arr(N7)
'my_Arrange = my_Arrange & Chr(13) & Chr(10) & my_Arr(N1) & my_Arr(N2) & my_Arr(N3) & my_Arr(N4) & my_Arr(N5)
my_Row = my_Row + 1
Next
Next
Next
Next
Next
Next
Next
'MsgBox my_Arrange
End Sub
温馨提示:答案为网友推荐,仅供参考
第1个回答 2015-06-25
从举例的结果来,你是要组合
但是要组合的个数--720种,还是要组合的明细--……追问
但是要组合的个数--720种,还是要组合的明细--……追问
我要的是能把所有组合列出来 比如12 23 b2 33 aa 44、12 23 b2 33 44 aa这种 两个字符为一组进行排列组合,所有可能情况
追答这里制作一个排列组合之 排列 的自动生成
这个最多可设置9个元素,因为我的03版本只有65536行
其它版本可增加更多元素