Перейти к основному содержанию

Как сгенерировать случайное число без дубликатов в Excel?

Во многих случаях вы можете создавать случайные числа в Excel? Но с общими формулами для рандомизации чисел могут быть некоторые повторяющиеся значения. Здесь я расскажу вам несколько хитростей для генерации случайных чисел без дубликатов в Excel.

Создавайте уникальные случайные числа с помощью формул

Создайте уникальное случайное число с помощью Kutools for Excel's Вставить случайные данные (легко!) хорошая идея3


стрелка синий правый пузырь Создавайте уникальные случайные числа с помощью формул

Чтобы сгенерировать уникальные случайные числа в Excel, вам нужно использовать две формулы.

1. Предположим, вам нужно сгенерировать случайные числа без дубликатов в столбце A и столбце B, теперь выберите ячейку E1 и введите эту формулу = СЛЧИС (), Затем нажмите Enter ключ, см. снимок экрана:
документ-рандомизировать-без повторения-1

2. И выберите весь столбец E, нажав Ctrl + Space одновременно, а затем нажмите Ctrl + D ключи для применения формулы = СЛЧИС () ко всей колонке E. См. снимок экрана:
документ-рандомизировать-без повторения-2

3. Затем в ячейке D1 введите максимальное количество необходимого случайного числа. В этом случае я хочу вставить случайные числа без повторения от 1 до 50, поэтому я введу 50 в D1.
документ-рандомизировать-без повторения-3

4. Теперь перейдите к столбцу A, выберите ячейку A1, введите эту формулу. =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))), затем перетащите маркер заполнения в следующий столбец B и перетащите маркер заполнения в нужный диапазон. Смотрите скриншот:
документ-рандомизировать-без повторения-4

Теперь в этом диапазоне нужные вам случайные числа не повторяются.

Примечание:

1. В приведенной выше длинной формуле A1 указывает ячейку, в которой используется длинная формула, D1 указывает максимальное количество случайных чисел, E1 - первая ячейка столбца, в котором применяется формула = RAND (), а 2 означает, что вы хотите вставить случайное число в два столбца. Вы можете изменить их по своему усмотрению.

2. Когда все уникальные числа сгенерированы в диапазоне, избыточные ячейки будут показаны как пустые.

3. С помощью этого метода вы можете просто сгенерировать случайное число, начиная с числа 1. Но с помощью второго способа вы можете легко указать диапазон случайных чисел.


стрелка синий правый пузырь Генерация уникального случайного числа с помощью Kutools for Excel's Вставить случайные данные

Обработка вышеуказанных формул вызывает слишком много неудобств. Но с Kutools for ExcelАвтора Вставить случайные данные функция, вы можете быстро и легко вставить уникальные случайные числа по мере необходимости, что сэкономит много времени.

Меньше времени, но выше производительность

Включает более 300 профессиональных инструментов для Excel 2019-2003
Первая версия 1.0 была выпущена в 2011 году, сейчас это версия 18.0.
Решает большинство ежедневных сложных задач Excel за секунды, экономя ваше время
30-дневная бесплатная пробная версия без каких-либо ограничений

kte 包装 盒

После установки Kutools for Excel, сделайте следующее:(Бесплатная загрузка Kutools for Excel прямо сейчас!)

1. Выберите диапазон, необходимый для генерации случайных чисел, и нажмите Кутулс > Вставить > Вставить случайные данные. Смотрите скриншот:

2. в Вставить случайные данные диалога, перейдите к Целое на вкладке введите нужный диапазон номеров в от и к текстовые поля и не забудьте проверить Уникальные ценности вариант. Смотрите скриншот:

3. Нажмите Ok для генерации случайных чисел и выхода из диалогового окна.

Примечание:Если количество выбранных вами ячеек превышает случайные числа, избыточные ячейки отображаются как пустые.

Вы также можете вставить случайную уникальную дату, случайное уникальное время по Вставить случайные данные. Если вы хотите получить бесплатную пробную версию Вставить случайные данные, пожалуйста, загрузите его прямо сейчас!
вставить случайные данные

Наконечник.Если вы хотите выбрать или отсортировать данные случайным образом, попробуйте использовать Kutools for Excel's Сортировка диапазона случайным образом как показано на следующем снимке экрана. Полная функция без ограничений в течение 30 дней, пожалуйста, скачайте и получите бесплатную пробную версию сейчас.

документ выбирается случайным образом


стрелка синий правый пузырь Вставить случайные данные без дубликатов




Быстро вставляйте несколько флажков или кнопок в диапазон ячеек на листе

В Excel вы можете вставить только один флажок / кнопку в ячейку один раз, это будет проблематично, если необходимо одновременно вставить несколько ячеек / кнопок. Kutools for Excel имеет мощную утилиту - Пакетная проверка вставки Коробки / Кнопки параметров пакетной вставки может вставлять флажки / кнопки в выбранные ячейки одним щелчком мыши.  Нажмите, чтобы получить полнофункциональную бесплатную пробную версию через 30 дней!
кнопка выбора флажка вставки документа
 
Kutools for Excel: с более чем 300 удобными надстройками Excel, вы можете попробовать бесплатно без ограничений в течение 30 дней.

Лучшие инструменты для офисной работы

Популярные опции: Найдите, выделите или определите дубликаты   |  Удалить пустые строки   |  Объедините столбцы или ячейки без потери данных   |   Раунд без формулы ...
Супер поиск: Множественный критерий VLookup    VLookup с несколькими значениями  |   VLookup по нескольким листам   |   Нечеткий поиск ....
Расширенный раскрывающийся список: Быстрое создание раскрывающегося списка   |  Зависимый раскрывающийся список   |  Выпадающий список с множественным выбором ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка Фокус   |  Просмотр дизайна   |   Большой Формулный Бар    Менеджер книг и листов   |  Библиотека ресурсов (Авто текст)   |  Выбор даты   |  Комбинировать листы   |  Шифровать/дешифровать ячейки    Отправлять электронные письма по списку   |  Суперфильтр   |   Специальный фильтр (фильтровать жирным шрифтом/курсивом/зачеркиванием...) ...
15 лучших наборов инструментов12 Текст Инструменты (Добавить текст, Удалить символы, ...)   |   50+ График Тип (Диаграмма Ганта, ...)   |   40+ Практических Формулы (Рассчитать возраст по дню рождения, ...)   |   19 Вносимые Инструменты (Вставить QR-код, Вставить изображение из пути, ...)   |   12 Конверсия Инструменты (Числа в слова, Конверсия валюты, ...)   |   7 Слияние и разделение Инструменты (Расширенные ряды комбинирования, Разделить клетки, ...)   |   ... и более

Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени.  Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Comments (17)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
En la parte Genere números aleatorios únicos con fórmulas como hago para ampliar el numero de columnas pasar de 2 a 5 sin repetir los numeros segun la formula que ud puso: =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)))
This comment was minimized by the moderator on the site
Hello. I just found this site, and am trying to figure out best way to assign a new code to people. I'd like to assign a random code for people to use between 1000 and 65000, that does not equal any codes already assigned. I'd also like it to be formatted with 5 numbers (00000), but that's not a big deal if it doesn't take care of that. Any ideas on how to make this work? TIA :-)
This comment was minimized by the moderator on the site
Hi, Janel, why you donot try the Data Validation in Excel? It can only allow whole numbers between 1000 and 65000 to be entered in a cell range.
This comment was minimized by the moderator on the site
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 :-)
This comment was minimized by the moderator on the site
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
This comment was minimized by the moderator on the site
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.
This comment was minimized by the moderator on the site
Hi there, did you ever manage to work out a solution to this, I've encountered the same issue. Any help would be appreciated.
This comment was minimized by the moderator on the site
Or you could use a sudoku setup.
This comment was minimized by the moderator on the site
How can I do the same thing with a custom list? Not numbers?
This comment was minimized by the moderator on the site
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))
This comment was minimized by the moderator on the site
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
This comment was minimized by the moderator on the site
Sorry I have no idea, you can place this problem to our forum https://www.extendoffice.com/forum.html, maybe someone can help you.
This comment was minimized by the moderator on the site
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
This comment was minimized by the moderator on the site
Actually, if you have two equal values, rank will give the same value to both. Rank formula does return repeated rank values.
This comment was minimized by the moderator on the site
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)
This comment was minimized by the moderator on the site
Hi, Base on Generate unique random numbers with formulas , How can I specify the starting point of a random number? Let's say I want to random "15 to 30".
This comment was minimized by the moderator on the site
Use RANDBETWEEN() to get random numbers lies between two numbers.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations