参考下面的问题和答案, 如何生成 0-6 所有可能的 3 位数字组合
我有类似的情况(需要生成所有可能的组合),但对于如下表所示的一组值,总可能性将是 16807 种组合
A B C D E
54 23 43 1 1
21 45 433 5 51
25 65 456 3 3
65 66 5678 100 5
12 77 980 5 6
13 90 878 6 66
111 909 662 50 55
组合如下
A B C D E
54 23 43 1 1
54 23 43 1 51
54 23 43 1 3
54 23 43 1 5
54 23 43 1 6
54 23 43 1 66
54 23 43 1 55
54 23 43 5 1
54 23 43 5 51
54 23 43 5 3
54 23 43 5 5
54 23 43 5 6
54 23 43 5 66
54 23 43 5 55
…
…
111 909 662 50 55
手动操作会花很长时间,而且坦白说,我不是 Excel 专家。请帮帮我。
答案1
运行这个简短的宏:
Sub Combin()
Dim i As Long, j As Long, k As Long, l As Long
Dim nRow As Long
nRow = 1
With Sheets("Sheet1")
For i = 1 To 7
ii = .Cells(i, "A").Value
For j = 1 To 7
jj = .Cells(j, "B").Value
For k = 1 To 7
kk = .Cells(k, "C").Value
For l = 1 To 7
ll = .Cells(l, "D").Value
Sheets("Sheet2").Cells(nRow, "A").Value = ii
Sheets("Sheet2").Cells(nRow, "B").Value = jj
Sheets("Sheet2").Cells(nRow, "C").Value = kk
Sheets("Sheet2").Cells(nRow, "D").Value = ll
nRow = nRow + 1
Next l
Next k
Next j
Next i
End With
End Sub
将获取数据工作表1喜欢:
并产生如下数据:
在工作表2对全部2401組合。