看板 Office 關於我們 聯絡資訊
軟體:EXCEL 2010 因為有份名單要用來抽獎,但抽獎券數量多的,要有比較多的中獎機會 所以想說用累積數字來抽 累積百分比 ID 數量 累積次數 0.02242152 A 5 5 0.33632287 B 70 75 0.36322870 C 6 81 0.42600897 D 14 95 0.47982063 E 12 107 0.77578475 F 66 173 1.00000000 G 50 223 於是用rand()函數取0~1 再用=VLOOKUP(rand(),上表範圍,ID,TRUE) 但發現用這方法找出的A 會是落在0.022~0.33之間的(但這區間其實應該要是B) 而0~0.02...的值找不出ID,且0.99的值會撈出F (這代表G永遠不會被抽到) 請問有解嗎? --------------------------------------- 最後想到的是手動補0跟最後一筆 累積百分比 ID 數量 累積次數 0 A 5 5 0.022421525 B 70 75 0.33632287 C 6 81 0.3632287 D 14 95 0.426008969 E 12 107 0.479820628 F 66 173 0.775784753 G 50 223 1 0 0 0 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.227.151.121 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Office/M.1579165290.A.EEA.html ※ 編輯: lovebbw (125.227.151.121 臺灣), 01/16/2020 17:05:19
soyoso: https://i.imgur.com/WYg0qwT.jpg 類似這樣 01/16 17:08
soyoso: 連結是模擬,所以以f1:f6的值來顯示公式回傳值 01/16 17:09
soyoso: 再自行調整內文所寫到的函數rand() 01/16 17:10
soyoso: 但內文提到手動補0方面就要看,當等於累積百分比時是回傳 01/16 17:14
soyoso: 哪一個ID,例如因為上面,感覺0~0.02242152是回傳A,但下 01/16 17:15
soyoso: 面的則會回傳B 01/16 17:15
soyoso: 而且下面所舉例方面累積百分比也沒有排序(由小到大) 01/16 17:16
soyoso: vlookup range_lookup以true來看不一定會回傳正確的值 01/16 17:17
soyoso: 01/16 17:15所回會回傳B方面是指等於累積百分比(如0.02242 01/16 17:18
soyoso: 152) 01/16 17:18
lovebbw: 剛剛用了一下 亂數0.001會撈出標題耶 撈不出A 01/16 17:19
soyoso: https://i.imgur.com/SycFift.jpg 可以 01/16 17:19
soyoso: 回傳的就是A,並不是標題,所以公式要自行調整 01/16 17:20
※ 編輯: lovebbw (125.227.151.121 臺灣), 01/16/2020 17:22:02
lovebbw: https://imgur.com/a/Xt182t7 還是會錯亂耶 01/16 17:27
lovebbw: 我知道了 對不起~~我上面有其他公式 所以可能A:A加到其他 01/16 17:31
soyoso: 當然,回文者又不清楚原po實際a1:a12資料是什麼 01/16 17:32
soyoso: 所以才回文要自行調整不是嘛 01/16 17:32
newacc: 考慮用RANDBETWEEN嗎? 01/16 18:28