|
- Sub test()
- Dim arr(1 To 49), brr(1 To 25)
- Dim i%, r%, n&, m%, t%, iNum&
- Dim s1, s2
- For i = 1 To 49
- arr(i) = i
- Next
- iNum = Application.InputBox("49选25抽取数:", "选取", 5, , , , , 1)
- If iNum < 1 Then Exit Sub
- Columns(2).ClearContents
- Randomize
- For n = 1 To iNum
- For i = 1 To 25
- r = Int(Rnd() * (50 - i)) + i
- t = arr(r): arr(r) = arr(i): arr(i) = t
- brr(i) = arr(i)
- Next
- Cells((n + 2) * 2 - 1, 2) = Join(brr, ",")
- Next
- s1 = 1
- For i = 25 To 49
- s1 = s1 * i
- Next
- s2 = 1
- For i = 1 To 25
- s2 = s2 * i
- Next
- MsgBox "49选25共有组合数:" & s1 / s2
- End Sub
复制代码
用VBA从1——49 中25个数生成不相同的组合.rar
(17.93 KB, 下载次数: 5)
|
|