Генератор случайных чисел в Excel без повторений (9 методов)

  • Поделись Этим
Hugh West

Оглавление

Для определенных целей (например, номер телефона, лотерея, статистическая выборка) нам необходимо генерировать случайные числа без повторений. Однако при использовании общих формул Excel вы можете получить повторяющиеся случайные числа. В этой статье я рассмотрю 9 методов генератора случайных чисел в Excel без повторений вместе с соответствующим объяснением.

Скачать Рабочую тетрадь для практических занятий

Генераторы случайных чисел без повторения.xlsx

9 методов реализации генератора случайных чисел в Excel без повторений

В первых 4 методах вы увидите использование новых функций массива, представленных в Excel 365, для генерации случайных чисел без повторений. Однако остальные методы подходят для всех версий Excel, особенно для тех, кто использует более ранние версии Excel. Подводя итог, можно сказать, что эти 9 методов можно использовать как генератор случайных чисел в Excel без повторений.

Давайте разберемся в методах.

1. использование функции RANDARRAY

Во-первых, мы увидим использование RANDARRAY функция для генерации случайных чисел.

Сайт RANDARRAY Функция, появившаяся в Excel 365, выдает список случайных чисел в виде массива. И мы можем использовать эту функцию для получения случайных чисел без дублирующих значений.

Например, я хочу получить 20 случайных чисел без повторений от 1 до 200.

В таких условиях формула будет выглядеть следующим образом.

=RANDARRAY(10,2,1,200,TRUE)

Вот, 10 количество строк, 2 это количество столбцов, 1 является минимальным значением, 200 максимальное значение, и, наконец, TRUE для целых чисел.

Однако этот метод будет плодотворным, если вам нужно несколько чисел из большого диапазона чисел (например, генерация 10/20 чисел от 1 до 200/500). В противном случае он будет создавать дублирующие значения.

Читать далее: Формула Excel для генерации случайного числа (5 примеров)

2. Использование функций UNIQUE & RANDARRAY

Во-вторых, мы будем использовать применение UNIQUE функция, а также RANDARRAY функция.

Сайт UNIQUE Функция, доступная в версиях Excel 365, Excel 2021, возвращает список уникальных значений из заданного набора данных или диапазона ячеек. Таким образом, мы можем использовать две функции для получения случайных чисел без повторений.

Комбинированная формула будет выглядеть следующим образом.

=UNIQUE(RANDARRAY(10,2,1,100,TRUE))

Вот, 10 количество строк, 2 это количество столбцов, 1 является минимальным значением, 200 максимальное значение, и, наконец, TRUE для целых чисел.

⧬ В приведенной выше формуле я использовал RANDARRAY(10,2,1,100,TRUE) в качестве массива для генерации 20 случайных чисел от 1 до 100. Позже, в качестве массива для генерации 20 случайных чисел от 1 до 100. UNIQUE функция вернет уникальные значения из сгенерированных случайных чисел.

3. Применение функций SORTBY & SEQUENCE для генерации случайного числа без повторений

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

Сайт SEQUENCE Функция, доступная только для версий Excel 365 & Excel 2021, выдает список (массив) последовательных чисел.

Предположим, вы хотите получить список чисел от 1 до 10, вам нужно использовать следующую формулу.

=SEQUENCE(10)

Вот, 10 количество строк.

Далее СОРТБИ Функция сортирует массив значений на основе другого массива значений в порядке возрастания или убывания. Следовательно, мы можем использовать эту функцию вместе с функцией SEQUENCE & RANDARRAY функция для создания 10 случайных чисел без повторений.

=SORTBY(SEQUENCE(10),RANDARRAY(10))

⧬ Объясняя формулу, мы можем сказать, что RANDARRAY(10) выдает список из 10 случайных чисел. SEQUENCE(10) Синтаксис генерирует список из 10 чисел (последовательный). И SEQUENCE(10) и RANDARRAY(10) используются как массив аргумент и по_массиву аргумент в СОРТБИ Поскольку мы хотим отсортировать последовательный список чисел в случайном порядке.

Читать далее: Как генерировать случайное число с помощью Excel VBA (4 примера)

4. использование функции INDEX в качестве генератора случайных чисел без повторений

Если мы хотим получить список случайных чисел без повторений, то функция ИНДЕКС функция наряду с ранее рассмотренной RANDARRAY , SEQUENCE & UNIQUE Кроме того, мы можем производить 4 типа случайных чисел.

4.1. Получение случайных целых чисел

Если вам нужно сгенерировать 10 случайных целых чисел от 1 до 100 без повторений, просто используйте следующую формулу.

=INDEX(UNIQUE(RANDARRAY(10, 1, 1, 100, TRUE)), SEQUENCE(10))

⧬ Объясняя формулу, мы можем сказать, что SEQUENCE(10) создает 10 последовательных номеров, RANDARRAY(10, 1, 1, 100, TRUE) выдает 10 случайных целых чисел от 1 до 100. Поскольку TRUE используется для генерации целых чисел. Позже UNIQUE функция удаляет повторяющиеся значения из генерируемых чисел. Наконец, функция ИНДЕКС Функция возвращает 10 случайных целых чисел в соответствии с указанием SEQUENCE функция. В этом случае выход UNIQUE функция используется как массив.

4.2. Получение случайных десятичных чисел

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

=INDEX(UNIQUE(RANDARRAY(10, 1, 1, 100, FALSE)), SEQUENCE(10))

Вот, 10 это количество строк, 2 это количество столбцов, 1 является минимальным значением, 100 максимальное значение, и, наконец, FALSE предназначен для генерации десятичных чисел.

4.3. Получение диапазона целых чисел

Аналогичным образом можно сгенерировать диапазон случайных целых чисел, используя следующую формулу.

=INDEX(UNIQUE(RANDARRAY(20, 1, 1, 200, TRUE)), SEQUENCE(10,2))

Вот, 20 количество строк, 1 это количество столбцов, 1 является минимальным значением, 200 максимальное значение, и, наконец, TRUE предназначен для генерации целых чисел.

4.4. Получение диапазона случайных десятичных чисел

Для генерации диапазона случайных десятичных чисел от 1 до 100 используйте следующую формулу.

=INDEX(UNIQUE(RANDARRAY(20, 1, 1, 100)), SEQUENCE(10, 2))

Вот, 20 количество строк, 1 это количество столбцов, 1 является минимальным значением, 200 максимальное значение, и, наконец, FALSE предназначен для генерации десятичных чисел.

Читать далее: Генерация случайного числа в Excel с десятичными знаками (3 метода)

5. Функции RAND & RANDBETWEEN для генерации случайных чисел

Сайт RAND функция генерирует число от 0 до 1. К счастью, вероятность генерации дублирующихся значений при использовании функции RAND Функция. Вы можете получить повторяющиеся значения, если вы пересечете использование 100000 раз.

Итак, используйте формулу, если вы хотите генерировать уникальные десятичные числа

=RAND()

Более того RANDBETWEEN возвращает целые числа между двумя заданными числами.

Например, если вы хотите получить целые числа от 1 до 100, вы можете использовать приведенную ниже формулу.

= RANDBETWEEN(1,100)

Вот, 1 это дно аргумент и 100 это топ аргумент.

К сожалению, существует большая вероятность получения повторяющихся значений при использовании RANDBETWEEN В этом случае вы можете использовать функцию Удаление дубликатов опция из Данные вкладка в Инструменты данных ленту после выбора диапазона ячеек.

Читать далее: Как генерировать случайные числа без дубликатов в Excel (7 способов)

Похожие чтения

  • Генерация случайного числа от 0 до 1 в Excel (2 метода)
  • Генератор случайных пятизначных чисел в Excel (7 примеров)
  • Генератор случайных 4-значных чисел в Excel (8 примеров)
  • Генерация случайного числа из списка в Excel (4 способа)
  • Генератор случайных чисел между диапазонами в Excel (8 примеров)

6. применение функций RAND & RANK в качестве генератора случайных чисел

Кроме того, вы можете использовать RANK функция, которая возвращает относительный размер числа на основе заданного списка чисел. Перед этим создайте список случайных десятичных чисел, используя функцию RAND функция.

=RANK(B5,$B$5:$B$15)

Вот, B5 это начальная ячейка десятичных чисел и B5:B15 это диапазон ячеек для десятичных чисел.

Читать далее: Excel VBA: генератор случайных чисел без дубликатов (4 примера)

7. Использование комбинации функций RANK.EQ & COUNTIF

Допустим, вы хотите генерировать случайные числа без повторений от 10 до 50.

В такой ситуации вы можете использовать комбинацию RANK.EQ & COUNTIF функции для генерации случайных чисел без повторений. Перед этим создайте список чисел от 10 до 50 с помощью функции RANDBETWEEN функция.

Теперь воспользуйтесь приведенной ниже формулой -

=9+RANK.EQ(B5, $B$5:$B$15) + COUNTIF($B$5:B5, B5) - 1

Вот, B5 начальная ячейка случайных чисел и B5:B15 это диапазон ячеек для десятичных чисел.

⧬ Объясняя формулу, мы можем сказать, что COUNTIF функция подсчитывает каждое случайное число, имеющееся в списке. А функция RANK.EQ возвращает относительную позицию (ранг) для каждого случайного числа, и, наконец, нам нужно добавить 9 потому что мы хотим сгенерировать число, начиная с 10.

8. функции LARGE & MATCH как генератор случайных чисел в Excel

Также мы можем производить случайные целые числа без повторений, используя комбинацию БОЛЬШОЙ и МАТЧ функции. БОЛЬШОЙ функция возвращает k-е наибольшее значение в заданном диапазоне ячеек или наборе данных.

=LARGE($B$5:$B$15,ROW(B1))

Вот, $B$5:$B$15 это диапазон ячеек для случайных десятичных чисел, которые находятся с помощью функции RAND функция, ROW(B1) относится к ряду номер 1.

Далее необходимо найти позицию созданного наибольшего значения по следующей формуле.

=MATCH(C5,$B$5:$B$15,0)

Вот, C5 это начальная ячейка наибольших чисел, $B$5:$B$15 это диапазон ячеек со случайными десятичными числами, и, наконец, 0 для получения точного совпадения.

9. Analysis Toolpak как генератор случайных чисел в Excel

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

Для использования Дополнения , выполните следующие действия.

⇰ Перейти к Файл > Опции .

⇰ Нажмите на Дополнения и выберите Надстройки Excel из выпадающего списка и выберите вариант Перейти .

⇰ Затем вы увидите следующее диалоговое окно, установите флажок перед пунктом Пакет инструментов анализа и нажмите OK .

⇰ Теперь выберите Анализ данных опция из Данные вкладка в Анализ лента.

⇰ Далее выберите опцию Генерация случайных чисел и нажмите OK .

⇰ Сразу же появится следующее диалоговое окно.

⇰ Затем выберите вариант в зависимости от желаемого результата.

⇰ Например, я выбрал Количество переменных и Количество случайных чисел в качестве 4 & 10 соответственно, чтобы сформировать список чисел, имеющих 10 ряды и 4 колонны.

⇰ Что еще более важно, мы должны выбрать Распространение в качестве Униформа потому что мы хотим избежать повторяющихся значений.

⇰ Позже, Между 10 и 30 означает, что я хочу найти число в диапазоне.

⇰ Наконец, вам необходимо выбрать Выходной диапазон

После выполнения всех заданий вы получите следующий результат.

Читать далее: Генератор случайных чисел с инструментом анализа данных и функциями в Excel

Некоторые распространенные ошибки

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

Название ошибок Когда происходит
#CALC! Если UNIQUE функция не может извлечь уникальные значения.
#SPILL! Если в диапазоне разлива есть любое значение, при котором UNIQUE функция вернет список.
#VALUE! Сайт RANDARRAY функция возникает, когда минимальное значение больше максимального.

Заключение

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

Хью Уэст — опытный тренер и аналитик Excel с более чем 10-летним опытом работы в отрасли. Он имеет степень бакалавра в области бухгалтерского учета и финансов и степень магистра делового администрирования. Хью страстно любит преподавать и разработал уникальный подход к обучению, которому легко следовать и который легко понять. Его экспертные знания Excel помогли тысячам студентов и специалистов по всему миру улучшить свои навыки и преуспеть в своей карьере. В своем блоге Хью делится своими знаниями со всем миром, предлагая бесплатные учебные пособия по Excel и онлайн-обучение, чтобы помочь отдельным лицам и компаниям полностью раскрыть свой потенциал.