今天和大家分享的是如何利用函數產生隨機的數字,並且將這個功能應用在抽獎活動,以及課堂分組這兩個常見的情景,下面我們一起來看看怎麼操作吧。
我們假設今天公司舉辦了一個摸彩活動,以上圖為例,要從這12位員工之中,抽出一名幸運得主。那麼這時,我們可以用上一個很實用的函數,叫做RANDBETWEEN。這個函數可以讓你設定一個最小值和最大值,並且從這個範圍中隨機產生一個整數。
以目前這個例子來說,我們可以在得獎人的欄位先輸入函數=RANDBETWEEN(1,12) 同時將最小值設為1,最大值設為12來得到一個隨機數字。那麼我們要如何將這個數字轉換成員工名字呢?這時可以利用INDEX函數來實現。這個函數可以讓你在一個範圍中,指定一個你想要的順位。
由於我們已經利用RANDBETWEEN取得了順位值。因此我們只要在RANDBETWEEN之前插入INDEX函數,並且補上INDEX的範圍。公式為:=INDEX(C3:C14,RANDBETWEEN(1,12))
另外,如果按下鍵盤的F9,RANDBETWEEN會立即重新運算。這樣,就可以讓這組函數繼續產生其它的幸運得主哦。
還有一個方法,我們也可以把RAND函數應用在我們的抽獎活動,當要抽出一個以上的得獎主時,有可能使用RANDBETWEEN如果產生重複人名的話,可以改用RANK函數,從左欄隨機找出五個排名,再輸入INDEX來框選姓名欄,將這些隨機數字轉換為人名,鎖定複製下拉,這樣就可以避免重複得主的問題了。公式為:=INDEX($C$3:$C$14,RANK(D3,$D$3:$D$14))
接下來我們來看看RANDBETWEEN的另一個應用,以下圖為例,假如今天公司的內部有一場考試,而考試題目分為A卷和B卷。如果我們打算以隨機的方式來分配試卷,那函數該如何設定呢?
很簡單,由於試卷只有A和B兩種題型,所以我們同樣可以輸入RANDBETWEEN函數,最小值設為1,最大值為2,讓所有員工都隨機分配到一個數字,接著同樣利用INDEX函數範圍設定在【試卷】欄裡,而順位則是由RANDBETWEEN來產生,這樣就可以完成試卷的隨機分配。注意的是下拉複製公式的時候要把AB卷欄按F4鎖定再下拉。
最後,我們來看一看【員人分組】這個例子。假設今天我們要把這12個員工分為A、B兩組,一組六個人來進行一項競賽。我們第一反應是用剛才學會的RANDBETWEEN函數,然而,你會發現如果用RANDBETWEEN函數會造成每組人數並不一致。那麼有什麼方式可以解釋每組人數不平均的問題呢?
這裡我們可以用另一個函數來產生隨機數字,它就是RAND函數。首先我們在分組欄的左側,插入一個空白欄,並且輸入【亂數】為標題欄。RAND和RANDBETWEEN的差異,在於RAND函數本身沒有任何引數,只要輸入左括號和右括號按下回車鍵後,RAND就會產生一個介於0到1之間的小數。所以相比於RANDBETWEEN來說,RAND函數不會有數值重複的問題。
那麼我們怎麼把這些亂數轉換成組別呢?首先可以將這一欄的數字,做個簡單的大小排名。在【分組】欄裡輸入RANK的函數名稱,來試著找出左邊欄位的數字,相對於全部數字的排名順序。再按下F4鍵來鎖定這個範圍,再回車鍵把公式下拉複製。公式為=RANK(D3,$D$3:$D$14)
計算出所有亂數的排名之後,我們可以利用一個簡單的方式來進行分組,既是把這些數字除以每一組所包含的人數。如果一組有6個人的話,就全部除以6,這樣就可以得到商數大於1以及小於或等於1這兩種結果。為了讓組別更容易被辨識,我們把計算的結果進一步套用【無條件進位】也就是在RANK之前加上ROUNDUP函數,逗號後面則輸入0,代表數字會進位到最接近的整數。公式為:=ROUNDUP(RANK(D3,$D$3:$D$14)/6,0)
公式寫到這裡,如果把這些數字轉成AB兩組就易如反掌了。同理,我們仿照之前所學的做法,在函數的開頭加上DHOOSE函數,並組將兩個組名,依序寫在後面就可以了。公式為:=CHOOSE(ROUNDUP(RANK(D3,$D$3:$D$14)/6,0),"A組","B組")
之後,如果分組的組數有所變更,比如要把所有員工分為3組的話,每組4個人的話,那麼我們只要把公式中的人數修改為【4】,並且在函數的後面加上【C組】的選項,excel就會立即分配好新的組別,同時每一組的人數也會一致哦。
最後還要提醒大家的是,當我們在其它的單元格做了任何的編輯RAND函數都會產生新的隨機數字,導致每個人所在的組別又會被立即更新。所以當每個人所分到組別確定之後,我們可以把【亂數】的欄位框選起來,按下CTRL+C執行複製,再右鍵點擊【選擇性粘貼】選擇【數值】,這樣每個人的組別就不會再變動了。
以上就是今天和大家分享的所有內容,你學會了嗎?如果對你有幫助的話,別忘了點個讚哦,關注我,每天與你分享更多office小技巧。