您現在的位置是:首頁 > 網頁遊戲首頁網頁遊戲
EXCEL簡易抽獎系統製作「思路詳解」
- 2022-07-31
自動抽獎怎樣才能抽到
今天我們來一起探討一下
如何利用EXCEL製作一個簡易版的抽獎系統
,
如圖一
有
10
名參與抽獎人員,最終會有
3
名人員獲獎。
製作這樣一個抽獎系統,
本質上就是要從這10名人員中隨機選出3名
,這樣就就可以達到這個效果。
這裡核心問題有一個:
如何拿到隨機的3個數?
問題解決思路
人員既然已經確定,那麼我們可以
利用INDEX函式,確定取數範圍
。
先了解一下
INDEX
函式,
INDEX
函式有
3
個引數,
=INDEX(
陣列區域,行,列
)
,總體意思就是說返回一個數組區域裡面的第幾行、第幾列的元素。
例如
A1=1,A2=2,A3=3,
B1=4,B2=5,B3=6
。
=INDEX(A1:B3,2,1)
,這個函式返回的值就是
A2
的值就是
2
。
這裡使用
INDEX
函式,主要就是解決哪一行的問題。
既然是需要隨機我們這裡需要引入一個函式
RAND
函式,這個函式會返回一個
0
到
1
的實數,且每次新的計算時,值會返回一個新的實數。
多個RAND函式同時工作時基本不會取值相同。
RAND
函式可以解決隨機數的問題,但是
RAND
函式返回的是實數,
需要將他變成我們所需要的不一樣的整數怎麼辦?
這裡就需要引入
RANK
排序函式,
既然10個數都不一樣,那麼必定會有1-10的順序
。
RANK
函式可以這樣理解
A1=2,B1=1,C1=5,D1=8
=RANK(A1,A1:D1)
會按降序排列給出一個順序,這裡是按
8
、
5
、
2
、
1
的降序來,所以返回值會是
3
。
所以現在我們先在
B
列製作一個輔助列
=RAND()
如圖二
然後在獲獎人員列輸入
=INDEX($A$3:$A$12,RANK(B3,$B$3:$B$12))
下拉填充
得到
圖三
這裡由於
RAND函式特性,表格任何地方進行一次隨機計算就會形成新的值。
所以會不斷的變化
這裡我們可以
按住F9鍵,不斷的重新整理,這樣就有了滾動抽獎的效果。
想了解更多精彩內容,快來關注哆啦的家