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 generate random number without duplicates in Excel?

In many cases, you may want to generate random numbers in Excel? But with the general formulas to randomize numbers, there may be some duplicate values. Here I will tell you some tricks to generate random numbers without duplicates in Excel.

Generate unique random numbers with formulas

Generate unique random number with Kutools for Excel’s Insert Random Data (Easy!) good idea3


Easily Insert Random Data without duplicates in a range of cells

If you want to insert random and no duplicate integer numbers, dates, times or strings, even custom lists into a range of cells, the forumula maybe hard to remember. But Kutools for Excel's Inser Random Data can quickly handle these jobs as easily as possible. Click for full features 30 days free trial!
doc insert random data
Kutools for Excel: with more than 300 handy Excel add-ins, free to try with no limitation in 30 days.
 

arrow blue right bubble   Generate unique random numbers with formulas


To generate the unique random numbers in Excel, you need to use two formulas.

1. Suppose you need to generate random numbers without duplicates into column A and column B, now select cell E1, and type this formula =RAND(), then press Enter key, see screenshot:
doc-randomize-no-repeat-1

2. And select the whole column E by pressing Ctrl + Space keys simultaneously, and then press Ctrl + D keys to apply the formula =RAND() to the whole column E. See screenshot:
doc-randomize-no-repeat-2

3. Then in the cell D1, type the maximum number of your needed random number. In here case, I want to insert random numbers without repeated between 1 and 50, so I will type 50 into D1.
doc-randomize-no-repeat-3

4. Now go to Column A, select cell A1, type this formula =IF(ROW()-ROW(A$1)+1>$D$1/2,"",RANK(OFFSET($E$1,ROW()-ROW(A$1)+(COLUMN()-COLUMN($A1))*($D$1/2),),$E$1:INDEX($E$1:$E$1000,$D$1))), then drag the fill handle to next column B, and drag down the fill handle to the range you need. See screenshot:
doc-randomize-no-repeat-4

Now, in this range, the random numbers you need are no repeated.

Note:

1. In the above long formula, A1 indicates the cell you use the long formula, D1 indicates the maximum number of the random number, E1 is the first cell of column you apply formula =RAND(), and 2 indicates you want to insert random number into two columns. You can change them as your need.

2. When all the unique numbers are generated into the range, the redundant cells will be shown as blank.

3. With this method, you just can generate random number start from number 1. But with the second way, you can easily specify the random number range.


arrow blue right bubble   Generate unique random number with Kutools for Excel’s Insert Random Data

With above formulas, there are too much inconvenience to handle. But with Kutools for Excel’s Insert Random Data feature, you can quickly and easily to insert the unique random numbers as your need which will saves a lot of time.

Less Time but Higher Productivity

Includes 300+ professional tools for Excel 2019-2003
First version 1.0 was released in 2011, now is the version 18.0
Solves most Excel daily complex tasks in seconds, save your time
30-day free trial without any limitation

kte包装盒

After installing Kutools for Excel, please do as below:(Free Download Kutools for Excel Now!)

1. Select the range you need to generate random numbers, and click Kutools > Insert > Insert Random Data. See screenshot:
doc radomize positive negative 11

2. In the Insert Random Data dialog, go to the Integer tab, type the number range you need into the From and To text boxes, and remember to check Unique values option. See screenshot:
doc randomize unique 2

3. Click Ok to generate the random numbers and exit the dialog.
doc randomize unique 3

Note:If your selected cells are more than the random numbers, the redundant cells are displayed as blank.

You also can insert the random unique date, random unique time by Insert Random Data. If you want to have a free trial of Insert Random Data, please downloan it right now!

doc randomize unique 4doc randomize unique 5

Tip.If you want to select or sort data randomly, please try to use the Kutools for Excel’s Sort Range Randomly as shown in the following screenshot. It’s full function without limitation in 60 days, please download and have a free trial now.

doc select randomly


arrow blue right bubble Insert Random Data Without Duplicate




Quickly Insert multiple checkboxes or buttons into a range of cells in worksheet

In Excel, you only can insert one checkbox/button into a cell once time, it will be troublesome if there are multiple cells needed to be inserted checkboxes/buttons at the same time. Kutools for Excel has a powerful utility -- Batch Insert Check Boxes / Batch Insert Option Buttons can insert checkboxes/buttons into the selected cells with one click .  Click for full-featured  free trial in 30-day!
doc insert check box option button
 
Kutools for Excel: with more than 300 handy Excel add-ins, free to try with no limitation in 30 days.

Kutools for Excel Solves Most of Your Problems, and Increases Your Productivity by 80%

  • Reuse: Quickly insert complex formulas, charts and anything that you have used before; Encrypt Cells with password; Create Mailing List and send emails...
  • Super Formula Bar (easily edit multiple lines of text and formula); Reading Layout (easily read and edit large numbers of cells); Paste to Filtered Range...
  • Merge Cells/Rows/Columns without losing Data; Split Cells Content; Combine Duplicate Rows/Columns... Prevent Duplicate Cells; Compare Ranges...
  • Select Duplicate or Unique Rows; Select Blank Rows (all cells are empty); Super Find and Fuzzy Find in Many Workbooks; Random Select...
  • Exact Copy Multiple Cells without changing formula reference; Auto Create References to Multiple Sheets; Insert Bullets, Check Boxes and more...
  • Extract Text, Add Text, Remove by Position, Remove Space; Create and Print Paging Subtotals; Convert Between Cells Content and Comments...
  • Super Filter (save and apply filter schemes to other sheets); Advanced Sort by month/week/day, frequency and more; Special Filter by bold, italic...
  • Combine Workbooks and WorkSheets; Merge Tables based on key columns; Split Data into Multiple Sheets; Batch Convert xls, xlsx and PDF...
  • More than 300 powerful features. Supports Office/Excel 2007-2019 and 365. Supports all languages. Easy deploying in your enterprise or organization. Full features 30-day free trial.
kte tab 201905

Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier

  • Enable tabbed editing and reading in Word, Excel, PowerPoint, 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!
officetab bottom
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.
    Anders · 2 months ago
    Help anyone :-) This one I cannot figure out. At our school we often put together students in groups - 2 and 2 together for a number of working sessions. 9 in this case. There are 18 students (vary) in the class. What I am chasing is a formula that gives me a random result of who should work together in the 9 working sessions without having students meeting each other twice. So I need Excel to give me a result of 18 students spread across 9 working sessions and any student must not be match with another student twice. How the xxxx do I fix that? I have search all over the place for inspiration without luck. Any input is appreciated :-)
    • To post as a guest, your comment is unpublished.
      Sunny · 1 months ago
      Hi, Anders, you need to list all names in column A, then in column B, apply formula =rand(), then specify 2 as the size in cell F2, now apply this formula =ROUNDUP(RANK(B3,$B$3:$B$19)/$F$2,0) in column C as below screenshot shown
      • To post as a guest, your comment is unpublished.
        Anders · 1 months ago
        Hi. Thanks for your reply.
        I understand you suggestions, but how do I achieve a setup where all students are assigned to maksimum number of workshops where 2 students are randomly assigned to first one workshop, then the second workshop, then the third workshop etc. etc. and to take this even further a student must not be matched with another student that he/she already have worked with. So when having 18 students I need "the system" to allocate all student to (in this case) 9 workshop (e.g. one workshop per week) and no student should be a student they have already worked with.
  • To post as a guest, your comment is unpublished.
    Michel · 10 months ago
    How can I do the same thing with a custom list? Not numbers?
    • To post as a guest, your comment is unpublished.
      Paulo Lira · 9 months ago
      Your custom list is in Column A. Lets say it has 100 values and it is located in A1:A100

      Column B is a counter:
      1 for B1 and (B1+1) for B2:B100

      Column C is a random list:
      RAND() for C1:C100

      Column D is a random rank based on the random list:
      RANK.EQ(C1;$C$1:$C$100)

      Column E is your output:
      INDEX($A$1:$A$100;MATCH(D1;$B$1:$B$100;0))

      Note: There is virtually no chance of generating a duplicate value on column C since RAND() have billions of possibilities. But, if you really want to erase that chance you can type the following formula at column D2:D100
      IF(COUNTIFS($C$2:C2;C2)>0;D1+1;RANK.EQ(C2;$C$1:$C$100))
  • To post as a guest, your comment is unpublished.
    Kevin · 1 years ago
    I need to create 5000 random numbers 1-90 no duplicates 30 columes I and using the formula =RAND() and =IF(ROW()-ROW(A$1)+1>$D$1/2,"",RANK(OFFSET($E$1,ROW()-ROW(A$1)+(COLUMN()-COLUMN($A1))*($D$1/2),),$E$1:INDEX($E$1:$E$1000,$D$1))) is there way that i could change the formula to extract the 5000 numbers
  • To post as a guest, your comment is unpublished.
    JIGGLY BALLS · 2 years ago
    After about three hours of trying to completely understand the long complicated formula to generate random numbers without duplicates, I figured out a far simpler formula that has the same results. After you randomly generate the numbers in a column using the RAND() function, You can simplify the formula:=IF(ROW()-ROW(A$1)+1>$D$1/2,"",RANK(OFFSET($E$1,ROW()-ROW(A$1)+(COLUMN()-COLUMN($A1))*($D$1/2),),$E$1:INDEX($E$1:$E$1000,$D$1))) in cell a1 to =Rank(E1,$E$1:$E$50). Then if you would like 50 random generated "unique numbers." you simply drag the formula through column a to cell a50. It is a lot simpler. Thank you for answering my question regardless of the huge unneeded formula. If you did not have this website. I don't think I would have been able to solve my problem.

    #WAR
    Jiggly
    • To post as a guest, your comment is unpublished.
      Manuel Ramirez · 11 months ago
      Actually, if you have two equal values, rank will give the same value to both. Rank formula does return repeated rank values.
      • To post as a guest, your comment is unpublished.
        Paulo Lira · 9 months ago
        Manuel Ramirez.

        The formula RAND() has hundreds of billions of possibilities, but even so you can use a conditional to not repeat the numbers:
        A1 = Rank(E1,$E$1:$E$50)
        A2 = IF(COUNTIFS($E$1:E1;E1)>1;A1+1;Rank(E2,$E$1:$E$50)
  • To post as a guest, your comment is unpublished.
    Bernz · 2 years ago
    Hi, Base on [b]Generate unique random numbers with formulas [/b], How can I specify the starting point of a random number? Let's say I want to random "15 to 30".
    • To post as a guest, your comment is unpublished.
      RK Mohanty · 2 years ago
      Use RANDBETWEEN() to get random numbers lies between two numbers.