Re: [算表] Excel:49取6 亂數列出1000筆組合(大樂透)

看板Office作者 (David)時間17年前 (2008/09/20 20:22), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/4 (看更多)
嗯 感謝提供 ^^ 這是屬於第一種 "簡單型的 連一筆49取6都可能重覆 若重覆了就要換(i-1)" 好處就是程式碼短,容易看懂~ 隱藏的缺點就是如果49取48就會比較難算 另外,如果我沒理解錯誤的話 仍無法避免各筆之間的重覆(例如k=5和k=995剛好取到一樣的6個數) 目前除了全列出來再取其中1000筆之外 還沒想到不重覆的方法 理論上 每一筆都可以對應到一個數字 例如 1 01 02 03 04 05 06 2 01 02 03 04 05 07 ... 只是不知如何由數字導出該筆組合(MOD什麼的之類) 不過,網路上看的其實是vb版本程式碼 所以我也不知道VBA實際是怎麼寫 另外例如此處設Fn的技巧 都收下學習了 ^^ 感謝 ※ 引述《chungyuandye (養花種魚數月亮賞星星)》之銘言: : ※ 引述《JieJuen (David)》之銘言: : : 原題: #18q-ePtR (ask) : : 49取6,亂數列出1000筆。 (無特別號) : : http://2y.drivehq.com/p/get6in49.rar : : 此題的特色是 總共的組合數13983816 : : 取1000組微不足道;另一方面若要先全列出再從中取亂數1000筆,則十分辛苦。 : Sub lotto() : Dim Fn As Object : Set Fn = Application.WorksheetFunction : For k = 1 To 1000 : For i = 1 To 6 : Cells(k, i) = Fn.RoundUp(Rnd * 49, 0) : For j = 1 To i - 1 : If Cells(k, i) = Cells(k, j) Then i = i - 1 : Next : Next : Next : End Sub -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.164.48.248 ※ 編輯: JieJuen 來自: 218.164.49.72 (05/11 13:50)
文章代碼(AID): #18rEiW3r (Office)
文章代碼(AID): #18rEiW3r (Office)