Tip: Other languages are Google-Translated. You can visit the English version of this link.
Log in
x
or
x
x
Register
x

or

How to make lucky draw names in Excel?

In your daily work, sometimes, you need to select some employees randomly from a long list names as the lucky names. In Excel, how could you randomly select some names for making lucky draw? This article, I will talk about some useful methods to deal with this job in Excel.

Extract random names for making lucky draw with formula

Extract random names for making lucky draw with VBA code

Select random names for making lucky draw with Kutools for Excel


Select random names for making lucky names in Excel

To select some employees randomly from a long list names as the lucky names, you can apply the Kutools for Excel, with its Sort Range Randomly feature, you can quickly select specific number of names randomly as you need.

doc lucky names 9

Kutools for Excel: with more than 200 handy Excel add-ins, free to try with no limitation in 60 days. Download and free trial Now!


Extract random names for making lucky draw with formula

For example, I want to extract any 3 names from the name list, the following long formula can help you, please do as this:

Enter this formula into a blank cell where you want to put the result: =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)))) , and then drag the fill handle down to cells as you need, see screenshot:

doc lucky names 1

Notes:

1. In the above formula: A2:A16 is the name list that you want to extract from randomly, B2 is the required number you want to extract names, C2 is the cell where to enter the formula, and C1 is the cell above the formula cell.

2. You can press F9 key to get another group of new names randomly.


Extract random names for making lucky draw with VBA code

Here, a VBA code also can help you to finish this task, please do as this:

1. Hold down the Alt + F11 keys to open the Microsoft Visual Basic for Applications window.

2. Click Insert > Module, and paste the following code in the Module Window.

VBA code: Extract random names from a list:

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

Note: In the above code, B2 is the cell contains the number of names you want to extract.

3. After inserting the code, then click Tools > References in the opened Microsoft Visual Basic for Applications window, and then, in the popped out References – VBAProject dialog box, check Microsoft Scripting Runtime option in the Available References list box, see screenshot:

doc lucky names 2

4. And then click OK button to exit the dialog box, then press F5 key to run this code, and a prompt box is popped out to remind you selecting the data list you want to extract names from, see screenshot:

doc lucky names 3

5. Click OK button, and another prompt box is popped out, please select a cell where you want to put the result, see screenshot:

doc lucky names 4

6. Then click OK, and the desired number of names have been created randomly at once, see screenshot:

doc lucky names 5


Select random names for making lucky draw with Kutools for Excel

May be above two methods are difficult for most of us, here, if you have Kutools for Excel, with its Sort Range Randomly feature, you can quickly select names randomly.

Kutools for Excel : with more than 300 handy Excel add-ins, free to try with no limitation in 60 days. 

After installing Kutools for Excel, please do as this:

1. Select the name list that you want to select randomly. Then click Kutools > Range > Sort Range Randomly, see screenshot:

doc lucky names 6

2. In the Sort Range Randomly dialog box, under the Select tab, enter the number that you want to select names into the No. of cells to select text box, and then choose Select random cells in the Select Type section, see screenshot:

doc lucky names 7

3. Then click Ok button, and your specific number of names have been selected as you need, see screenshot:

doc lucky names 8

Click to Download Kutools for Excel and free trial Now!



Recommended Productivity Tools for Excel

Kutools for Excel Helps You Always Finish Work Ahead of Time, and Stand Out From Crowd

  • More than 300 powerful advanced features, designed for 1500 work scenarios, increasing productivity by 70%, give you more time to take care of family and enjoy life.
  • No longer need memorizing formulas and VBA codes, give your brain a rest from now on.
  • Become an Excel expert in 3 minutes, Complicated and repeated operations can be done in seconds, 
  • Reduce thousands of keyboard & mouse operations every day, say goodbye to occupational diseases now.
  • 110,000 highly effective people and 300+ world-renowned companies' choice.
  • 60-day full features free trial. 60-day money back guarantees. 2 years of free upgrade and support.

Brings Tabbed Browsing and Editing to Microsoft Office, Far More Powerful Than The Browser's Tabs

  • Office Tab is designed for Word, Excel, PowerPoint and Other Office Applications: Publisher, Access, Visio and Project.
  • Open and create multiple documents in new tabs of the same window, rather than in new windows.
  • Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Ravikumar Mangipudi · 9 months ago
    Error:
    #NUM!



    Formula:
    =IF(ROWS(C$2:C2)>B$2,"",INDEX(A$2:A$1500,AGGREGATE(15,6,((ROW(A$2:A$1500)-ROW(A$2)+1)/ISNA(MATCH(A$2:A$1500,C$1:C1,0))),RANDBETWEEN(1,ROWS(A$2:A$1500)-COUNTA(C$1:C1)+1))))
    • To post as a guest, your comment is unpublished.
      skyyang · 9 months ago
      Hello, Mangipudi,
      This formula works well in my Excel workbook, which Excel version do you use?
      You can also give your problem as a screenshot here.