EXCEL问题:不相邻的9个数字选5个进行组合,如何用EXCEL把所有组合显示出来?

比如说,1,4,6,8,17,20,29,45,60 谁能给做一个VBA模板,谢谢!
2025-04-18 14:26:06
推荐回答(1个)
回答1:

Sub 组合()
stt = InputBox("请输入9个数并用,隔开。如1,4,6,8,17,20,29,45,60", "输入", "1,4,6,8,17,20,29,45,60")
arr = Split(stt, ",")
num = UBound(arr)
rownum = 2
Range("A1").Value = "组数"
Range("B1").Value = "数一"
Range("C1").Value = "数二"
Range("D1").Value = "数三"
Range("E1").Value = "数四"
Range("F1").Value = "数五"
If (num <> 8) Then
MsgBox "输入数字不是九个", 0, "error"
Else
For i = 0 To num
For j = i To num
For k = j To num
For l = k To num
For m = l To num
If (i = j Or j = k Or k = l Or l = m) Then
rownum = rownum
Else
Range("A" & rownum).Value = "第" & rownum - 1 & "组"
Range("B" & rownum).Value = arr(i)
Range("C" & rownum).Value = arr(j)
Range("D" & rownum).Value = arr(k)
Range("E" & rownum).Value = arr(l)
Range("F" & rownum).Value = arr(m)
rownum = rownum + 1
End If
Next
Next
Next
Next
Next
End If

End Sub