如何在 Excel 中製作幸運抽獎名單?
在職場活動、團隊會議或特別場合中,經常需要從一大串名單中隨機挑選少數幸運參與者或得獎者——例如團隊抽獎、隨機頒獎或志願者遴選。當面對數位化名單,尤其人數眾多時,傳統的「帽子抽籤」方式不僅效率低落,也不切實際。所幸,Excel 提供多種實用方法,讓您直接在試算表中進行隨機選取,打造透明、可重複且高度自訂的幸運抽獎體驗。本文將逐步帶您掌握幾種在 Excel 中隨機抽取姓名的有效技巧,說明各自的適用情境、優勢與注意事項,並分享實用訣竅,幫助您避開常見錯誤。
使用 Kutools for Excel 隨機選取姓名進行幸運抽獎
使用公式抽取隨機姓名進行幸運抽獎
若您需要從一欄姓名中隨機選取特定數量的姓名(例如 3 位得獎者),可採用複雜公式法。此方法能自動避免重複選取,並在每次活頁簿重新計算時更新結果,特別適合從中等規模清單中抽取少量固定人數,尤其當您希望流程具備可追溯性,且無需額外增益集或程式碼時。
使用此方法,請依照以下步驟操作:
在您希望顯示首個幸運抽獎結果的空白儲存格中(例如 C2)輸入下列公式:
=IF(ROWS(C$2:C2)>B$2,"",INDEX(A$2:A$16,AGGREGATE(15,6,((ROW(A$2:A$16)-ROW(A$2)+1)/ISNA(MATCH(A$2:A$16,C$1:C1,0))),RANDBETWEEN(1,ROWS(A$2:A$16)-COUNTA(C$1:C1)+1)))) 輸入公式後,請將填滿控點向下拖曳至所需抽取姓名數量的列數(例如,若要抽取 3 個姓名,則拖曳至 C4,共涵蓋 3 列)。抽選出的姓名將自動顯示於對應儲存格中。請參閱截圖:

參數說明與實用提示:
- 在此公式中:
- A2:A16—這是您的來源姓名清單。請將此範圍調整為符合您實際的姓名資料。
- B2—此儲存格應填入您欲隨機抽取的姓名總數(例如:輸入 3)。
- C2—這是結果清單中輸入公式的首個儲存格。
- C1—這是公式正上方的儲存格。即使留空,也必須保留,以確保公式結構正確運作。
- 此方法具備高度動態性:只要按下 F9 重新計算,即可立即取得全新的一組隨機姓名!
- 為避免每次工作表重新計算時公式內容變動,您可以複製結果,並使用選擇性貼上 > 數值,將抽選出的姓名轉為靜態值。
- 若您的名稱列表較長,或您打算多次進行抽選,請務必確保結果欄位與名稱列表互不重疊,以免產生錯誤。
注意:請仔細確認儲存格參照是否正確,且所選範圍與您的實際資料相符。若變更工作表結構或刪除被參照的儲存格,將可能導致公式失效。
使用 Kutools for Excel 隨機選取姓名進行幸運抽獎
若您偏好簡單直觀、無需撰寫公式的操作方式,Kutools for Excel 透過其隨機排序功能,提供快速隨機選取姓名的簡便途徑!此解決方案特別適合非技術使用者,或當您希望以視覺化方式輕鬆操作——尤其在處理大型資料集或需頻繁重複抽選時,更能大幅提升效率!
Kutools for Excel 安裝完成後,請依照以下步驟操作:
1. 選取您要用於幸運抽獎的完整名單,接著點擊 Kutools> 範圍> 隨機排序或選擇。請參閱截圖:

2. 在隨機排序或選擇對話方塊中,切換至選取分頁。於要選中的個數方塊中輸入您想隨機抽取的姓名數量(例如 3),並在儲存格區段下選擇選中類型,即可輕鬆隨機選取任意數量的不重複姓名!請參閱截圖:

3. 點擊確定,系統將隨機選取指定數量的姓名,並在您的清單中醒目標示,方便您輕鬆辨識得獎者或選中人員。請參閱截圖:

此方法以操作簡便、可靠著稱,並額外提供排序或洗牌姓名的選項(視需求而定)。您可依需要反覆使用此功能,有效避免手動計算常見的錯誤與重複問題,是追求快速取得結果、無需煩惱公式或編碼使用者的理想選擇。
注意:請確保選取範圍內不含其他無關資料,因為僅有醒目提示的儲存格代表您的得獎姓名。您可依需求複製或標記高亮名稱區域,以供後續使用。
立即點擊下載 Kutools for Excel,免費試用!
總結來說,Kutools for Excel 提供直覺友善且極致高效的隨機抽選管理方案,特別適合重視可靠性與易用性,或需針對不同群組規模反覆執行抽選的場景。
使用 VBA 程式碼抽取隨機姓名進行幸運抽獎
針對進階應用情境,或當您希望以更高彈性自動化流程時,可透過 VBA 程式碼從清單中抽取隨機姓名。此解決方案特別適合熟悉 Excel 開發人員選項的使用者,尤其當您需要重複抽選、調整程式(例如將結果輸出至特定位置),或處理大型清單時。
使用 VBA 進行幸運抽獎的步驟如下:
1. 按下 Alt + F11,即可開啟 Microsoft Visual Basic for Applications 視窗。
2. 點擊插入> 模組,建立新模組後,將下方 VBA 程式碼複製貼上至模組視窗中。
VBA 程式碼:從清單中抽取隨機姓名:
Public Sub LuckyDraw()
Dim I, J, xRnd As Long
Dim xSRg, xDRg As Range
Dim xDic As New Dictionary
Dim xnum, xLastRow As Long
On Error Resume Next
Set xSRg = Application.InputBox("Please select the data list:", "KuTools for Excel", Selection.Address, , , , , 8)
If xSRg Is Nothing Then Exit Sub
Set xDRg = Application.InputBox("Please selecta cell to put the result:", "KuTools for Excel", , , , , , 8)
If xDRg Is Nothing Then Exit Sub
xLastRow = xSRg.Rows.Count
Set xSRg = xSRg(1)
Set xDRg = xDRg(1)
xnum = Range("B2")
If xnum < 1 Then Exit Sub
J = 0
For I = 1 To xnum
LabExit:
xRnd = Int(Rnd() * xLastRow)
If xDic.Exists(xRnd) Then GoTo LabExit
xDic.Add xRnd, ""
xDRg.Offset(J, 0).Value = xSRg.Offset(xRnd, 0).Value
J = J + 1
Next
End Sub
參數說明:程式碼中的 B2 為您輸入欲抽取隨機姓名數量的儲存格,可依需求調整儲存格參照。
3. 貼上程式碼後,在 VBA 編輯器視窗中前往工具> 參考項目。在開啟的對話方塊中,於可用參考項目清單中勾選 Microsoft Scripting Runtime。此步驟為啟用程式碼中所使用的 Scripting Dictionary 所必需。請參閱截圖:

4. 點擊確定關閉對話方塊,再按下 F5 執行程式碼。系統將彈出提示框,要求您選取欲進行抽選的姓名資料清單。請參閱截圖:

5. 按一下確定,系統將顯示另一個提示框,讓您選擇幸運抽獎結果要顯示的目標儲存格。請參見螢幕截圖:

6. 按一下確定以完成此程序。隨機選出的姓名將立即從您指定的儲存格開始輸出。請參閱螢幕截圖:

實用提示:執行程式碼前,請務必先儲存您的工作內容。若遇到錯誤,請再次確認參考設定與儲存格範圍是否正確。此方法提供更高的控制權,但最適合熟悉基本 VBA 操作的使用者。
優缺點:VBA 方法在自訂化方面功能強大,能針對進階需求靈活調整,例如排除先前中獎者、自動發送通知等。然而,此方法需具備基本的 VBA 知識,且除非您的環境支援巨集執行,否則可能無法使用。
替代方案:使用 RAND 函數與排序抽取隨機姓名
除了上述方法外,另一種實用又直觀的解決方案,就是結合 Excel 的 RAND 函數與排序功能。此方法簡單易行,無需複雜公式、外掛程式或程式碼,適用於任何 Excel 版本,特別適合快速、偶發性的抽獎需求!當您希望手動查看並驗證隨機化過程時,這個方法尤其實用。
操作步驟如下:
- 在您的姓名列表旁新增一個輔助欄位,並於輔助欄位的首個儲存格中輸入 =RAND()(例如:若姓名位於 A2:A16,請在 B2 輸入)=RAND())。
- 將公式向下複製到整個清單旁側,每個儲存格將自動填入一個隨機小數。
- 選取您的原始姓名清單及 RAND 輔助欄位。
- 前往資料選項卡,點選排序,將排序依據設為包含 RAND 值的輔助欄位,並選擇「由小到大」排序(反之亦可),即可隨機重新排列整個清單!
- 排序完成後,只需從重新排列的清單中選取前 N 個姓名,即為您的幸運抽獎得主。
提示與注意事項:每次重新計算工作表時,RAND 函數都會自動更新。若想凍結抽獎結果,請複製姓名並使用「貼上為數值」功能貼到其他位置;若要重新抽獎,只需按下 F9 重新計算即可!
優點:此方法極易操作,無需額外設定,且於現場抽獎時能清晰展現公平性。然而,若您需頻繁重複抽獎,或需使用排除名單等進階功能,建議改用公式、VBA 或 Kutools 來處理。
總結而言,Excel 提供多種方式可隨機選取姓名進行幸運抽獎。選擇哪種方法取決於您對簡易性、可自訂性或視覺互動性的偏好。若追求簡單的手動操作,建議使用 RAND 與排序功能,或 Kutools for Excel。若需要動態且可重複使用的解決方案,則公式或 VBA 能提供更多彈性。若遇到錯誤或非預期結果,請再次檢查您的儲存格參照、儲存格範圍選擇,並確認必要的外掛程式或巨集設定已啟用。為確保最佳效果,執行抽獎前務必先儲存資料,並驗證結果,以免在重要活動或團隊事件中發生失誤。
最佳 Office 生產力工具
| 🤖 | KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行 | 產生程式碼| 建立自訂公式 | 分析資料並產生圖表| 呼叫增強函數…… |
| 熱門功能:尋找、醒目提示或標記重複值 | 刪除空白行 | 合併列或儲存格而不遺失資料 | 不使用公式的四捨五入…… | |
| 高級 LOOKUP:多重條件 VLookup | 多重數值 VLookup | 跨多個工作表 VLookup | 模糊查找…… | |
| 高級下拉列表:快速建立下拉式清單 | 相依式下拉式清單 | 多選下拉式清單…… | |
| 欄位管理員:新增指定數量的欄位|移動欄位|切換隱藏欄位的可見狀態|比較範圍與欄位…… | |
| 精選功能:網格聚焦 | 設計視圖 |增強編輯欄 | 工作簿與工作表管理員 | 資源庫(自動文字)| 日期提取 | 合併工作表 | 加密/解密儲存格 | 依清單傳送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體儲存格/斜體/刪除線……) ...... | |
| 頂尖 15 工具組:12 文字工具(添加文本,刪除特定字符,……)| 50+ 圖表 類型(甘特圖,……)| 40+ 實用公式(基於生日計算年齡,……)| 19 插入工具(插入二維碼,從路徑插入圖片,……)| 12 轉換工具(金額轉大寫,匯率轉換,……)| 7 合併和拆分工具(高級合併行,分割儲存格,……)|……以及更多 |
運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……
Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!
- 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
- 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
- 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!
所有 Kutools 增益集,一個安裝程式
Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!
- 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
- 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
- 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
- 30 天完整功能試用— 無需註冊,無需信用卡
- 超值之選— 比單獨購買各增益集更省費用