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

Функции для генерации случайных чисел

В Google Таблицах есть две функции для генерации случайных чисел.

Это СЛЧИС / RAND и СЛУЧМЕЖДУ / RANDBETWEEN.

Первая генерирует случайное число от 0 до 1, а вторая — целые числа в заданном диапазоне.
Соответственно, у СЛЧИС() аргументов нет — она всегда возвращает число от 0 до 1.

У СЛУЧМЕЖДУ два аргумента — границы, в которых нужно сгенерировать число.

Например, эта функция будет возвращать число от 3 до 27:

=СЛУЧМЕЖДУ(3;27)

Эти функции могут пригодиться для моделирования какой-нибудь ситуации, когда реальных данных. Например, я использовал их при создании некоторых примеров для нашего курса. А также можно использовать их для жеребьевки, например — такой пример рассмотрим чуть ниже.

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

Генерация случайной даты и времени

Если вспомнить, что дата и время в Google Таблицах — это числа, то мы поймем, что можем без труда генерировать случайные даты и время.

Напомню, дата — это целое число.

Чтобы конвертировать дату из привычного нам формата в числовой, можно использовать функцию ДАТАЗНАЧ / DATEVALUE.

Так, следующая функция будет возвращать случайные даты в промежутке между 01.01.2018 и 01.01.2019:

=СЛУЧМЕЖДУ(ДАТАЗНАЧ(«01.01.2018»);ДАТАЗНАЧ(«01.01.2019»))

Ну а чтобы сгенерировать случайное время — достаточно воспользоваться СЛЧИС. Ведь она генерирует число от 0 до 1, а время для Google Таблиц и есть число от 0 до 1 (напомню, полдень, например = 0,5).

Соответственно, если хочется сгенерировать случайную дату и случайное время, нужно сложить две функции:

=СЛУЧМЕЖДУ(ДАТАЗНАЧ(«01.01.2018»);ДАТАЗНАЧ(«01.01.2019»)) + СЛЧИС()

Генерация случайных комбинаций с помощью ИНДЕКС и СЛУЧМЕЖДУ

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

Задача состоит из двух этапов:

Выбрать случайные числа от 1 до N, где N — количество команд в лиге (функция СЛУЧМЕЖДУ);

Вернуть названия команд, соответствующие этим номерам, из списка (функция ИНДЕКС, которая, как мы помним, возвращает элемент из массива по его номеру).

Формула для одного из клубов будет выглядеть следующим образом:

=ИНДЕКС(список_клубов; СЛУЧМЕЖДУ(1;N))

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

=ИНДЕКС(список_клубов1; СЛУЧМЕЖДУ(1;N))&» : «&ИНДЕКС(список_клубов2; СЛУЧМЕЖДУ(1;M))

Формула, выбирающая случайный клуб из списка в B4:B23

Таким же образом можно генерировать и другие случайные сочетания — от ФИО из набора имен и фамилий до случайных телефонов или электронных адресов

Рубрики:
Комментарии
Темы, на которые я пишу: