如何用Excel 來為公司年會抽獎、班級分組?來試試Excel函數吧!
一、公司年會抽獎
假如今天公司舉辦了一次摸彩活動,我們要從這12位員工下抽出一位幸運得主。
在這裡我們可以用到 一個很實用的函數叫RANDBETWEEN(最大值,最小值)、INDEX(資料範圍,順位)、CHOOSE(序號,"A","B")
RANDBETWEEN(最小值,最大值):這個函數可以讓你設定一個最小值和一個最大值,並在最小值和最大值之間產生一個隨機整數。
例如:RANDBETWEEN(1,12),產生了數字6,說明了最小值為1,最大值為12產生了隨機數6。
INDEX(資料範圍,順位):這個函數可以讓你在指定的資料範圍,按照順位找出指定的資料。
例如:如圖所示
INDEX(C3:C14,2),資料範圍為C3:C14,順位為2,結果則為"劉明哲"
CHOOSE(序號,"A","B")函數:
例如:CHOOSE(1,「A」,"B")則結果為A
反之CHOOSE(2,"A","B")結果為B
利用兩個函數,我們就可以做一個抽獎活動,例如上面的表有12個人,則我們隨機產生一個1到12的數字,再用INDEX函數來從這十二個當中順位出人名。
二、考試分A、B卷
還是上面的12個人,假如這12個人考試,如何針對每個人分配"A卷"和"B卷"呢?
也許你會想到用RANDBETWEEN和INDEX也可以解決上面的問題。
思路:先在D3單元格輸入"=RANDBETWEEN(1,2)"產生一個1到2的隨機數字,再用INDEX函數在G3:G4順位出"A卷"或"B卷",並在INDEX前面的資料範圍按"F4"鎖定「G3:G4」。則在D3單元格內正確的輸入
為"=INDEX($G$3:$G$4,RANDBETWEEN(1,2))"
在此也可以利用CHOOSE函數完成同樣的功能。
在D3單元格輸入"=CHOOSE(RANDBETWEEN(1,2),"A卷","B卷")"
完成後,按住D3單元格右下角向下拖拽,其他同學的試卷也呈現出來了。
那麼問題來了!!
你有沒有發現A卷和B卷的數量不等。
這就涉及到一個等數分組的概念。
例如:班級 有12個學生,並將他們分成兩組,每組保證人數相等。
在此之前 我們來學學兩個函數。一個叫RAND()函數,一個叫RANK()函數。
RAND()函數:產生一個0到1的隨機數字。
例如:RAND後產生了一個0.089的小數
RANK(資料範圍,順位):對數據進行排位
以下圖為例:在一堆亂數中指定的的亂數在第幾位,則會從大到小依次排列。
例如:"戴育如"在下表得到亂數排第幾位呢?
用RANK函數在E3單元格輸入RANK(D3,D3:D14)並按"F4"鎖定RANK函數的參數"D3:D14"
由此可知"戴育如"在第二位
在向下拖拽E3單元格則成功將其他員工的亂數排列。
RANK()函數介紹完了!!
那麼利用上面函數對下圖員工進行分組。
在D列前面插入一個欄名為"亂數"的欄號。在D3單元格中輸入"=RAND()"產生亂數,並按住D3往下拖拽。產生更多的亂數。
想要將成員一組分為幾個,在"=CHOOSE(ROUNDUP(RANK(D3,$D$3:$D$14)/6,0),"A組","B組")"中的"6"改為對應的數字。
還有如何防止每一次編輯時"亂數"欄中的數字變動:
可以將亂數中的數字複製起來,然後選擇性粘貼"找到"數值"粘貼回去。就可以解決這個問題!
如有疑問,關注公眾號,聯繫作者!
新手出航,不喜勿噴!