利用INDEX + MATCH 組合,設計一個簡單抽獎,從名單中抽出3名得獎人。
在 B2 儲存格輸入公式 =RAND() 產生亂數
往下複製公式
在D欄的中獎名單: D2儲存格輸入公式
= INDEX($A$2:$A$16,MATCH(LARGE($B$2:$B$16,ROW(A1)),$B$2:$B$16,0))
往下複製公式,只複製要抽出的數量即可。
抽獎結果出來後不改變時,要記得把結果去掉公式轉為常數,才不會改變抽樣結果。( 選取抽獎結果,右鍵複製,在原地貼123(值),將公式轉為常數。 )
若要重新產生新中獎者:
按 F9 就會重新產生中獎名單
或在空白的儲存格上按Delete鍵
或功能區→公式→立即重算
公式 INDEX($A$2:$A$16,MATCH(LARGE($B$2:$B$16,ROW(A1)),$B$2:$B$16,0)),是利用ROW() 函數產生順序值 ( (1,2,3,… ),再用LARGE() 函數取得B欄第X大的數值,接著用MATCH()找出第X大的數值是位在B欄的第幾個,最後由INDEX() 找出對應A欄的名字。
INDEX($A$2:$A$16,MATCH(LARGE($B$2:$B$16,ROW(A1)),$B$2:$B$16,0)) 找出第1大值
INDEX($A$2:$A$16,MATCH(LARGE($B$2:$B$16,ROW(A2)),$B$2:$B$16,0)) 找出第2大值
INDEX($A$2:$A$16,MATCH(LARGE($B$2:$B$16,ROW(A3)),$B$2:$B$16,0)) 找出第3大值
美化抽獎表格
將B欄產生亂數的 ”儲存格內容” 隱藏起來,公開抽獎時不會看到這堆亂數。
B欄產生亂數的儲存格內容隱藏起來,公式不會受影響
隱藏儲存格內容:
方法1 選取儲存格範圍→字顏色設為→白色 ( 還原字改回黑色 )
方法2 選取儲存格範圍→右鍵→隱藏儲存格內容:自訂 ;;;
( 還原隱藏儲存格內容:儲存格格式→選通用格式 )
設個抽獎鈕代替F9來重新計算
圈選D2:D4 → 開發人員 → 錄製巨集 → 取巨集名稱 → F9 → 停止錄製,錄製完後,選擇一個圖形,編輯文字,在該圖形 → 右鍵 → 選擇指定巨集 → 選剛剛錄好的內容巨集名稱 → 確定,設鈕巨集連結完成。
相關參考:
錄製巨集 http://hjc7780.pixnet.net/blog/post/333753576
指定巨集按鈕設置 http://hjc7780.pixnet.net/blog/post/333753051