Генератор случайных чисел эксель

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

Доброго времени суток, уважаемый, читатель!

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

Итак, для чего же собственно мы можем использовать этом механизм:

  • во-первых: мы можем для тестировки формул, заполнить нужный нам диапазон случайными числами;
  • во-вторых: для формирования вопросов различных тестов;
  • в-третьих: для любого случайно распределения заранее пронумерованных задач между вашими сотрудниками;
  • в-четвёртых: для симуляции разнообразнейших процессов;

…… да и во многих других ситуациях!

В этой статье я рассмотрю только 3 варианта создания генератора (возможности макроса, я не буду описывать), а именно:

Создаём генератор случайных чисел с помощью функции СЛЧИС

С помощью функции СЛЧИС, мы имеем возможность генерировать любое случайное число в диапазоне от 0 до 1 и эта функция будет выглядеть так:

Если возникает необходимость, а она, скорее всего, возникает, использовать случайное число большого значения, вы просто можете умножить вашу функцию на любое число, к примеру 100, и получите:

=СЛЧИС()*100; А вот если вам не нравятся дробные числа или просто нужно использовать целые числа, тогда используйте такую комбинацию функций, это позволит вам отсечь значения после запятой или просто отбросить их:

=ОТБР((СЛЧИС()*100);0) Когда возникает необходимость использовать генератор случайных чисел в каком-то определённом, конкретном диапазоне, согласно нашим условиям, к примеру, от 1 до 6 надо использовать следующую конструкцию (обязательно закрепите ячейки с помощью абсолютных ссылок):

  • a – представляет нижнюю границу,
  • b – верхний предел

и полная формула будет выглядеть: =СЛЧИС()*(6-1)+1, а без дробных частей вам нужно написать: =ОТБР(СЛЧИС()*(6-1)+1;0)

Создаём генератор случайных чисел с помощью функции СЛУЧМЕЖДУ

Эта функция более проста и начала нас радовать в базовой комплектации Excel, после 2007 версии, что значительно облегчило работу с генератором, когда необходимо использовать диапазон. К примеру, для генерации случайного числа в диапазоне от 20 до 50 мы будем использовать конструкцию следующего вида:

Создаём генератор с помощью надстройки AnalysisToolPack

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

Для получения доступа к этой, бесспорно, полезной надстройки, нужно, для начала, с помощью диалогового окна «Надстройки» установить этот пакет. Если у вас он уже установлен, то дело за малым, выбираете пункт меню «Данные» – «Анализ» – «Анализ данных», выбираете «Генерация случайных чисел» в предложенном программой списке и жмём «ОК».

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

Читать еще:  Удалить дубли эксель

А на этом у меня всё! Я очень надеюсь, что вопрос по созданию генератора случайных чисел я раскрыл полностью и вам всё понятно. Буду очень благодарен за оставленные комментарии, так как это показатель читаемости и вдохновляет на написание новых статей! Делитесь с друзьями прочитанным и ставьте лайк!

Не забудьте поблагодарить автора!

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

Генерация случайных чисел в MS EXCEL

Рассмотрим генерацию случайных чисел с помощью надстройки Пакет Анализа и формул MS EXCEL.

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

С помощью надстройки Пакет Анализа можно сгенерировать случайные числа следующих распределений:

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

В MS EXCEL имеется множество функций, с помощью которых можно сгенерировать случайные числа, принадлежащие различным распределениям. И лишь часть из этих распределений представлено в окне инструмента Генерация случайных чисел. Чтобы сгенерировать случайные числа из других распределений см. статью про распределения MS EXCEL, в которой можно найти ссылки на другие распределения.

Примечание: С помощью другого инструмента надстройки Пакет анализа, который называется «Выборка», можно извлечь случайную выборку из конечной генеральной совокупности. Подробнее см. статью Случайная выборка из генеральной совокупности в MS EXCEL.

Модельное распределение

С помощью надстройки Пакет Анализа можно сгенерировать числа, имеющее так называемое модельное распределение. В этом распределении нет никакой случайности — генерируются заранее заданные последовательности чисел.

Поле Число переменных задает количество столбцов генерируемых данных. Т.к. в них будут сгенерированы совершенно одинаковые данные, то нет особого смысла указывать в поле Число переменных значение отличное от 1.

Поле Число случайных чисел можно оставить незаполненным, т.к. оно рассчитывается автоматически в зависимости от значений, указанных в группе Параметры диалогового окна. Например, при параметрах, указанных на рисунке выше, в каждом столбце будет выведено по 24 «случайных» числа: четыре нечетных числа 1; 3; 5; 7 (от 1 и до 7; шаг равен 2) будут повторены по 2 раза, а каждая последовательность будет повторена по 3 раза (4*2*3=24).

Произвольное дискретное распределение

С помощью надстройки Пакет Анализа можно сгенерировать числа, имеющие произвольное дискретное распределение, т.е. распределение, где пользователь сам задает значения случайной величины и соответствующие вероятности.

В поле Входной интервал значений и вероятностей необходимо ввести ссылку на двухстолбцовый диапазон (см. файл примера ).

Необходимо следить, чтобы сумма вероятностей модельного распределения была равна 1. Для этого в MS EXCEL имеется специальная функция ВЕРОЯТНОСТЬ() .

СОВЕТ: О генерации чисел, имеющих произвольное дискретное распределение, см. статью Генерация дискретного случайного числа с произвольной функцией распределения в MS EXCEL. В этой статье также рассмотрена функция ВЕРОЯТНОСТЬ() .

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

Функция СЛУЧМЕЖДУ

Эта функция вычисляет случайное целое число, между двумя заданными значениями. При каждом вычислении листа, возвращает новое случайное число.

Синтаксис формулы:
СЛУЧМЕЖДУ(нижн_граница;верхн_граница),где:

  • Нижн_граница Обязательный. Наименьшее целое число, которое возвращает функция СЛУЧМЕЖДУ.
  • Верхн_граница Обязательный. Наибольшее целое число, которое возвращает функция СЛУЧМЕЖДУ.
Читать еще:  Ограничить количество символов в ячейке в excel

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

Функция СЛЧИС

С этой функцией все немного сложнее. Ее простое использование без дополнительных формул врятли принесет Вам желаемый результат. Поясню, почему: Функция СЛЧИС() не содержит дополнительных параметров и при ее использовании возвращается число, которое большее или равно 0 и меньше 1. Как видите, если к примеру вам нужно получить случайное число между 10 и 100, то использовать это формулу «в лоб» не получится, но не переживайте, сейчас я Вам расскажу как из такой ситуации можно легко выбраться.

Итак, предположим что в ячейке A1 у Вас установлено минимальное значение, к примеру 10, а в ячейку B1 у Вас внесено максимальное значение, к примеру 100. Тогда используя, формулу, указанную ниже, Вы получите нужный результат:
=СЛЧИС()*(МАКС(A1;B1)-МИН(A1;B1))+МИН(A1;B1)

Как и в случае с СЛУЧМЕЖДУ, значение будет пересчитываться каждый раз при вычислении листа. Вручную это можно сделать, нажав F9.

По ссылке ниже Вы можете скачать уже готовый генератор случайных чисел в Excel:

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

Внимание: При каждом открытии файла число будет генерироваться заново!

Надеюсь мои советы Вам помогли. Подписывайте на наши группы в социальных сетях, оставляйте свои вопросы/комментарии к статье.

Функциональная генерация случайных чисел в Excel и Google Таблицах

Генерация случайных чисел в Excel реализуется очень просто. Функция применима как к приложению из офисного пакета от Microsoft, так и к электронным таблицам от Google.

При этом, у пользователя не возникает необходимости в установке каких-либо дополнительных модулей. Функция работает внутри вашего документа по умолчанию.

Стоит заметить, что при работе с онлайн-приложением Google Таблицы, дополнительно будет допустимо указать и интервал обновления расчета. На выбор есть 3 варианта:

  • при внесении изменений (по умолчанию);
  • при изменениях и каждую минуту;
  • при изменениях и каждый час.

В Excel такой настройки я не обнаружил. Может плохо искал или её там вовсе нет. После прочтения инструкции, подскажите в комментариях, получилось ли вам обнаружить её. Удалось лишь задействовать для возможности перерасчета вручную клавишу F9 .

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

Генерация случайных чисел в Excel

Для работы мы будем использовать функцию с именем “RANDBETWEEN”. Она позволяет задать определенный диапазон значений. Правильно оформляется следующим образом:

и возвращает случайное целое число между двумя значениями (включая оба). Первое — начальное, второе — конечное.

В электронных таблицах из пакета офисных программ Microsoft также может иметь такое имя:

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

Теперь в выбранной ячейке напишите функцию и задайте свой диапазон. В примере выберем от 1 до 100. Теперь посмотрите на результат. Обновите документ или внесите любые изменения. Число меняется?

Читать еще:  Excel комментарий к ячейке

Второй вариант

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

и получите случайный результат от установленного вами значения в ячейке “D1”.

Для изменения упоминаемого выше интервала автоматического перерасчета, перейдите в меню “Файл” и нажмите на пункт “Настройки”. На вкладке “Вычисления” для опции “Обновление расчетов” выберите один из трех предложенных вариантов. Сохраните настройки при помощи соответствующей кнопки.

Выбрав “При внесении изменений и каждую минуту”, генерация случайных чисел в Excel будет меняться соответствующим образом. Контроль времени в минутах происходит согласно системным часам Windows 10. Спасибо за внимание!

Случайные числа без повторов

Постановка задачи

Предположим, что нам необходимо создать набор целых случайных чисел без повторов в заданном интервале значений. Примеры с ходу:

  • генерация уникальных случайных кодов для товаров или пользователей
  • назначение людей на задачи (каждому по случайной из списка)
  • перестановки слов в поисковом запросе (привет seo-шникам)
  • игра в лото и т.д.

Способ 1. Простой

Для начала рассмотрим простой вариант: нам необходимо получить случайный набор из 10 целых чисел от 1 до 10. Использование встроенной в Excel функции СЛУЧМЕЖДУ (RANDBETWEEN) уникальности не гарантирует. Если ввести ее в ячейку листа и скопировать вниз на 10 ячеек, то запросто могут случиться повторы:

Поэтому мы пойдем другим путем.

Во всех версиях Excel есть функция РАНГ (RANG) , предназначенная для ранжирования или, другими словами, определения топовой позиции числа в наборе. Для самого большого числа в списке ранг=1, второе в топе имеет ранг=2 и т.д.

Введем в ячейку А2 функцию СЛЧИС (RAND) без аргументов и скопируем формулу вниз на 10 ячеек. Эта функция сгенерирует нам набор из 10 случайных дробных чисел от 0 до 1:

В соседний столбец введем функцию РАНГ, чтобы определить позицию в рейтинге для каждого полученного случайного числа:

Получим в столбце В то, что хотели — любое нужное количество неповторяющихся случайных целых чисел от 1 до 10.

Чисто теоретически, может возникнуть ситуация, когда СЛЧИС выдаст нам два одинаковых случайных числа в столбце А, их ранги совпадут и мы получим повтор в столбце В. Однако, вероятность такого сценария крайне мала, учитывая тот факт, что точность составляет 15 знаков после запятой.

Способ 2. Сложный

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

Введите в ячейку А2 следующую формулу, нажмите в конце Ctrl+Shift+Enter (чтобы ввести ее как формулу массива!) и скопируйте формулу вниз на требуемое количество ячеек:

Способ 3. Макрос

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

Похожие статьи

Ссылка на основную публикацию
Похожие публикации
Adblock
detector