Я задавал вопросы в сообществе Microsoft Excel, и один из вопросов касался генерации случайных чисел в Excel от 1 до 10, где ни одно из чисел не повторяется (т. Е. Нет дубликатов).
Моим первым побуждением было использовать функцию RANDBETWEEN.
Я быстро проверил некоторые случайные данные в Excel, и это не помогло мне - в результатах были повторения.
Вот что я получил, когда использовал функцию RANDBETWEEN:
Итак, мне пришлось прибегнуть к функции RAND.
Он работает хорошо с незначительной вероятностью повторения чисел (я тестировал его несколько раз на более чем 100 000 ячеек, и повторений не было.
Если вы генерируете много случайных чисел, вы можете проверить это один раз).
Создание набора уникальных случайных чисел в Excel
Вот как вы можете использовать функцию RAND для генерации набора уникальных случайных чисел в Excel:
- В столбце используйте формулу = СЛУЧАЙ (), чтобы сгенерировать набор случайных чисел от 0 до 1.
- После того, как вы сгенерировали случайные числа, преобразуйте их в значения, чтобы они не пересчитывались снова и снова, замедляя работу вашей книги.
- В соседнем столбце используйте следующую формулу RANK и скопируйте / перетащите для других ячеек (здесь я использовал ее только для 10 чисел, отсюда A2: A11. Вы можете соответствующим образом настроить диапазон).
= РАНГ (A2; $ A $ 2: $ A $ 11) - Вот и все. У вас будет список случайных чисел от 1 до 10, и ни одно из чисел не будет повторяться.
ПРИМЕЧАНИЕ: Не забудьте преобразовать ячейки с помощью функции RAND из формулы в значения, иначе она будет пересчитывать и изменять список случайных чисел каждый раз, когда вы меняете что-либо в книге.
Осторожность: Хотя я проверил и не нашел повторов в результате функции СЛЧИС, я все же рекомендую вам проверить, как только вы сгенерируете эти числа. Вы можете использовать условное форматирование, чтобы выделить дубликаты, или использовать опцию «Удалить дубликаты», чтобы избавиться от них.Используете ли вы какой-либо другой метод для генерации случайных чисел без дубликатов?
Дайте мне знать в разделе комментариев.