[VBA ] 請問如何讓亂數更亂 & 降低EXCEL運跑速度

作者: purplishfish (紫魚)   2018-02-02 21:13:39
各位版友大家好
最近再寫一個抽獎程式
方法是每個序號對到一個亂數,最後取亂數最大值的該序號做為得獎人
但總覺得得獎人常常重複,不知道是不是亂數的問題?
目前亂數是使用(前面都有先呼叫Randomize)
Rnd()
有試過 Rnd(Time)
不知道還有沒有其他可以更亂的方法?
另一個想請教的問題是有沒有辦法降低excel的運跑速度?
(長官嫌這樣抽獎太快顯示沒有刺激感...)
目前是增加垃圾回圈
但是常常顯示的部分會當掉,所以有點不知道怎麼辦
感謝大家!
作者: olycats ( )   2018-02-03 01:06:00
第二個問題 可使用application.wait 的方法可以達到等一秒(或您指定的時間) 再繼續進行下去
作者: vincent0926   2018-02-03 03:56:00
如果跑垃圾迴圈會感覺當機無反應,可於迴圈內加入doevents看看
作者: tootsie (布丁豆花)   2018-02-03 20:23:00
Rnd(Rnd())呢?
作者: MOONRAKER (㊣牛鶴鰻毛人)   2018-02-03 21:30:00
rnd的那個引數跟亂不亂完全無關 怎麼會有人有這種誤解抱歉,只要>0都是取出下一個虛擬亂數,跟亂不亂無關rnd(1)或rnd(8)或rnd()完全一樣而rnd()值在[0, 1)之間 所以rnd(rnd())跟rnd()完全一樣
作者: purplishfish (紫魚)   2018-02-03 22:33:00
抱歉沒有表達清楚,更亂是希望他的下一個引數出現機率更加不同謝謝1,2樓大大我會再試試看

Links booklink

Contact Us: admin [ a t ] ucptt.com