
Общая формула
=ROUNDUP(RANK(A1,randoms)/size,0)
Резюме
Чтобы случайным образом распределять людей по группам или командам определенного размера, вы можете использовать вспомогательный столбец со значением, созданным функцией RAND, вместе с формулой, основанной на функциях RANK и ROUNDUP. В показанном примере формула в D5:
=ROUNDUP(RANK(C5,randoms)/size,0)
который возвращает номер группы для каждого имени, указанного в столбце B, где «random» - это именованный диапазон C5: C16, а «size» - именованный диапазон G5.
Объяснение
В основе этого решения лежит функция RAND, которая используется для генерации случайного числа во вспомогательном столбце (столбец C в примере).
Чтобы назначить полный набор случайных значений за один шаг, выберите диапазон C5: C16 и введите = RAND () в строке формул. Затем используйте сочетание клавиш + Enter, чтобы ввести формулу сразу во все ячейки.
Примечание: функция СЛЧИС будет продолжать генерировать случайные значения каждый раз, когда в рабочий лист вносятся изменения, поэтому обычно вам нужно заменить результаты в столбце C фактическими значениями с помощью специальной вставки, чтобы предотвратить изменения после назначения случайных значений.
В столбце D номер группы присваивается по следующей формуле:
=ROUNDUP(RANK(C5,randoms)/size,0)
Функция RANK используется для ранжирования значения в C5 по всем случайным значениям в списке. Результатом будет число от 1 до общего количества людей (в данном примере - 12).
Этот результат затем делится на «размер», который представляет желаемый размер группы (3 в примере), который затем передается в функцию ROUNDUP как число с нулевым значением num_digits . Функция ROUNDUP возвращает число, округленное до следующего целого числа. Этот номер представляет собой присвоенный номер группы.
ПОТОЛОЧНАЯ версия
Вместо ROUNDUP можно использовать функцию CEILING. Как и функция ROUNDUP, CEILING также округляет в большую сторону, но вместо округления до заданного числа десятичных знаков CEILING округляет до заданного числа.
=CEILING(RANK(C5,randoms)/size,1)