用以下方法,Excel 製作抽獎和抽班委原理一樣的
我用的版本是 Excel 2016,其他版本的介面可能略有不同。
案例 1:如何從 10 個人中一次性抽取 3 名獲獎者,且所有中獎者不重複?
案例 2:如何從 10 個人中依次抽取 1、2、3 等獎各 1 名,每次抽取後固定住獲獎者,且所有中獎者不重複?
所需函式及功能:
為了便於理解,我把每個步驟拆開來講解。
案例 1 解決方案:
以下是 10 個人員的名單,現在需要從中一次性抽 3 個幸運兒。
1. 在 B 列用 Rand 函式生成 10 個隨機數
2. 在 C 列用 Rank 函式對這 10 個隨機數排序
公式:=RANK(B2,B$2:B$11)
翻譯:計算 B2 單元格在 B2~B11 陣列中的排名,預設從大到小排。
3. 在 D 列用 Index 函式按 C 列的隨機排名抽出中獎者。因為需要一次抽 3 個人,所以我們拉 3 行公式即可。
公式:=INDEX(A$2:A$11,C2)
翻譯:在A列的指定陣列中,讀取出第 n 行單元格
使用方法 :
* 請注意:由於隨機函式每次都會隨機變化,為了固定住獲獎人員名單,請複製獲勝者名單,並且 paste value 到其他單元格。
案例 2 解決方案:
增加的需求:
1. 給 D 的公式加個 if 條件,同時增加輔助列 E
公式:=IF(E2=1,D2,INDEX(A$2:A$11,C2))
翻譯:如果 E2 單元格為 1,則固定 D2 單元格的值,否則,繼續抽獎
當我們在 E2 中輸入“1”以後,無論何時按下或放開 F9 抽獎,D2 的“王7”始終是固定的。
現在我們要抽第 2 個人,但是“王7”不可以重複中獎,怎麼做?
在不使用 vba 的情況下,此處推薦一種最簡便的方法。
2. 選中 D2~D11 --> 按 Ctrl + Q --> 選擇 Formatting --> Duplicate Values
翻譯:當“中獎者”區域內有重複人員,則高亮顯示
如下,當我們抽第 2 個人的時候,又抽到了“王7”,會自動高亮顯示。
3. 現在抽獎器已經做好了,我們把模板調整美觀,再寫個操作說明。
1) 把人員名單及輔助列移到“人員名單”sheet 中
2) 選中 E 列,透過 Format Cells --> Custom,把“1”顯示為“已中獎”
這就是最終的抽獎模板和使用說明,有時間的話,可以加點圖片效果什麼的,然後就可以在公司年會耍酷啦!
使用說明:
1、將參加抽獎的人員名單,維護在“人員名單”表裡面
2、按住 F9 開始抽獎(此時可以看到B列內容一直在變化)
3、一會功夫,放手,B 列此時就是被選出來的“中獎人”
4、在 C 列的第一個黃色單元格輸入“1”,以便把“中獎人”鎖定
5、重複 2~4 步驟抽二等獎(如果B列出現紅色背景,則重複 2~3 步驟)
6、以此類推,抽出三等獎
用以下方法,Excel 製作抽獎和抽班委原理一樣的
我用的版本是 Excel 2016,其他版本的介面可能略有不同。
案例 1:如何從 10 個人中一次性抽取 3 名獲獎者,且所有中獎者不重複?
案例 2:如何從 10 個人中依次抽取 1、2、3 等獎各 1 名,每次抽取後固定住獲獎者,且所有中獎者不重複?
所需函式及功能:
RAND()RANK(number, ref, [order])INDEX(array, row_num,[column_num])IF(logical_test,[value_if_true],[value_if_false])Conditional Formatting為了便於理解,我把每個步驟拆開來講解。
案例 1 解決方案:
以下是 10 個人員的名單,現在需要從中一次性抽 3 個幸運兒。
1. 在 B 列用 Rand 函式生成 10 個隨機數
2. 在 C 列用 Rank 函式對這 10 個隨機數排序
公式:=RANK(B2,B$2:B$11)
翻譯:計算 B2 單元格在 B2~B11 陣列中的排名,預設從大到小排。
3. 在 D 列用 Index 函式按 C 列的隨機排名抽出中獎者。因為需要一次抽 3 個人,所以我們拉 3 行公式即可。
公式:=INDEX(A$2:A$11,C2)
翻譯:在A列的指定陣列中,讀取出第 n 行單元格
使用方法 :
按住 F9,數字開始滾動,抽獎開始放開按鍵,即為抽獎結果(因為 rand 函式基本不可能出現重複值,所以中獎人不會重複)* 請注意:由於隨機函式每次都會隨機變化,為了固定住獲獎人員名單,請複製獲勝者名單,並且 paste value 到其他單元格。
案例 2 解決方案:
增加的需求:
每次抽一個人,抽出後固定中獎者不得重複中獎1. 給 D 的公式加個 if 條件,同時增加輔助列 E
公式:=IF(E2=1,D2,INDEX(A$2:A$11,C2))
翻譯:如果 E2 單元格為 1,則固定 D2 單元格的值,否則,繼續抽獎
當我們在 E2 中輸入“1”以後,無論何時按下或放開 F9 抽獎,D2 的“王7”始終是固定的。
現在我們要抽第 2 個人,但是“王7”不可以重複中獎,怎麼做?
在不使用 vba 的情況下,此處推薦一種最簡便的方法。
2. 選中 D2~D11 --> 按 Ctrl + Q --> 選擇 Formatting --> Duplicate Values
翻譯:當“中獎者”區域內有重複人員,則高亮顯示
如下,當我們抽第 2 個人的時候,又抽到了“王7”,會自動高亮顯示。
3. 現在抽獎器已經做好了,我們把模板調整美觀,再寫個操作說明。
1) 把人員名單及輔助列移到“人員名單”sheet 中
2) 選中 E 列,透過 Format Cells --> Custom,把“1”顯示為“已中獎”
這就是最終的抽獎模板和使用說明,有時間的話,可以加點圖片效果什麼的,然後就可以在公司年會耍酷啦!
使用說明:
1、將參加抽獎的人員名單,維護在“人員名單”表裡面
2、按住 F9 開始抽獎(此時可以看到B列內容一直在變化)
3、一會功夫,放手,B 列此時就是被選出來的“中獎人”
4、在 C 列的第一個黃色單元格輸入“1”,以便把“中獎人”鎖定
5、重複 2~4 步驟抽二等獎(如果B列出現紅色背景,則重複 2~3 步驟)
6、以此類推,抽出三等獎