Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 10097|回复: 27

[已解决]33个数中生成不 重复6个数

[复制链接]
发表于 2014-10-5 21:45 | 显示全部楼层 |阅读模式
Book1.xlsx1.rar (6.17 KB, 下载次数: 34)

Book1.xlsx1.rar

6.17 KB, 下载次数: 54

发表于 2014-10-5 22:01 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2014-10-5 22:21 | 显示全部楼层
刀羊 发表于 2014-10-5 22:01
全排列共要百万以上。

是的,能做吗?
回复

使用道具 举报

发表于 2014-10-5 22:28 | 显示全部楼层
33个数,都只用一次?
回复

使用道具 举报

发表于 2014-10-5 22:39 | 显示全部楼层
33选6+16选1,福利彩票
回复

使用道具 举报

 楼主| 发表于 2014-10-5 22:39 | 显示全部楼层
su45 发表于 2014-10-5 22:28
33个数,都只用一次?

无数次
回复

使用道具 举报

 楼主| 发表于 2014-10-5 22:42 | 显示全部楼层
qh8600 发表于 2014-10-5 22:39
33选6+16选1,福利彩票

能做吗
回复

使用道具 举报

发表于 2014-10-5 22:46 | 显示全部楼层
mmc998 发表于 2014-10-5 22:42
能做吗

我以前写过,明天帮你写写看,今天太晚了
回复

使用道具 举报

 楼主| 发表于 2014-10-5 22:51 | 显示全部楼层
qh8600 发表于 2014-10-5 22:46
我以前写过,明天帮你写写看,今天太晚了

谢谢
回复

使用道具 举报

发表于 2014-10-5 23:39 | 显示全部楼层
  1. Sub test()
  2.    Dim ttl%, chs%, re%(), tmp%()
  3.    ttl = 33: chs = 6
  4.    ReDim re%(1 To Application.WorksheetFunction.Combin(ttl, chs), 1 To chs)
  5.    ReDim tmp%(1 To chs)
  6.    Call dgzh(re, 1, 0, tmp, ttl, chs, 0)
  7. End Sub

  8. Sub dgzh(rnd_array, yn%, n%, t_array, ttl%, chs%, cnt&)
  9.    Dim i%, j%
  10.    For i = n + 1 To ttl - chs + yn
  11.        If yn <= chs Then
  12.           t_array(yn) = i
  13.           Call dgzh(rnd_array, yn + 1, i, t_array, ttl, chs, cnt)
  14.        Else
  15.           cnt = cnt + 1
  16.           For j = 1 To chs
  17.              rnd_array(cnt, j) = t_array(j)
  18.           Next
  19.           Exit Sub
  20.        End If
  21.    Next
  22. End Sub
复制代码
最终结果在re这个数组里,由于33选6有110多w组合,一次性无法导出到单元格。如果需要请回复哈

评分

参与人数 2 +6 学分 +2 收起 理由
吶呐呀 + 2 需要需要,怎么发?
张雄友 + 6 需要的。

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-2 16:58 , Processed in 0.647492 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表