KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Быстрое создание случайных групп для списка данных в Excel

АвторСунДата изменения

В повседневной работе или при подготовке учебных и тренинговых занятий вам может понадобиться случайным образом разделить список данных — например, имена, студенческие ID или задачи проекта — на группы. Как показано на снимке экрана 1, элементы данных случайным образом распределяются по группам, а на снимке экрана 2 имена распределяются по случайным командам для выполнения задания или групповой активности. Эффективное решение этой задачи обеспечивает справедливость и значительно экономит время по сравнению с ручным распределением. К счастью, Excel предлагает несколько надёжных методов — включая формулы, автоматизацию с помощью VBA и анализ через сводные таблицы — чтобы быстро и гибко выполнять случайное распределение по группам.

Снимок экрана 1Снимок экрана 2
  снимок экрана, показывающий случайные данные, назначенные группе  снимок экрана, показывающий случайные данные, назначенные списку имен

Случайное распределение данных по группам

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

Автоматизация случайного распределения по группам с помощью VBA (Дополнительные параметры)

Скачать образец файла


Случайное распределение данных по группам

Когда нужно случайным образом распределить список данных по заданному числу групп, допуская различия в их размерах, вы можете быстро решить эту задачу с помощью функций ВЫБОР и СЛУЧМЕЖДУ в Excel. Типичные сценарии — это распределение участников по игровым командам или формирование временных групп для встреч.

Начните с выбора пустой ячейки рядом со своим списком — например, если список расположен в столбце A, выберите ячейку B2. Затем введите следующую формулу:

=CHOOSE(RANDBETWEEN(1,3),«Group A»,«Group B»,«Group C »)

В этой формуле:

  • СЛУЧМЕЖДУ(1,3) означает, что генерируются случайные числа от 1 до 3, представляющие 3 группы.
  • Группа A, Группа B и Группа C — это названия групп, которые будут отображаться рядом с вашими данными.

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

После этого каждый элемент данных будет случайным образом распределён по группам. Обратите внимание: результаты могут изменяться при каждом пересчёте листа (например, после редактирования ячейки или повторного открытия файла), поскольку СЛУЧМЕЖДУ — это volatile-функция.

Практический совет: Если вы не хотите, чтобы эти распределения менялись, скопируйте результаты формулы и воспользуйтесь командой Вставить специально > Значения, чтобы зафиксировать распределения.

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

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

снимок экрана kutools for excel ai

Раскройте магию Excel с помощью KUTOOLS AI

  • Интеллектуальное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это доступно через простые команды.
  • Пользовательские формулы: создавайте индивидуальные формулы для оптимизации рабочих процессов.
  • Программирование на VBA: Пишите и внедряйте код VBA легко и без усилий.
  • Анализ формул: Легко разбирайтесь даже в самых сложных формулах.
  • Перевод текста: Ломайте языковые барьеры прямо в ваших таблицах.
Расширьте возможности Excel с помощью инструментов на базе ИИ.Скачать сейчаси ощутите эффективность, как никогда раньше!

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

Чтобы равномерно распределить данные по случайным группам с фиксированным количеством записей в каждой (например, по 4 участника на группу), в Excel эффективно использовать комбинацию функций ОКРВВЕРХ и РАНГ. Это идеальный подход для учебных заданий, формирования сбалансированных команд или любых ситуаций, где важна одинаковая численность групп.

Чтобы применить этот метод:

1. Сначала добавьте вспомогательный столбец рядом с вашими данными (например, столбец E) и введите в ячейку E2:

=RAND()

Перетащите эту формулу вниз, чтобы заполнить все нужные ячейки в вашем списке — функция СЛЧИС присвоит каждой записи случайное значение.

2. In the next column (e.g., F2), введите следующую формулу:

=ROUNDUP(RANK(E2,$E$2:$E$13)/4,0)

Здесь:

  • E2:E13: Измените этот диапазон под свои данные — он должен включать все строки с функцией =RAND().
  • 4: Размер каждой группы. Измените это значение, если нужны другие размеры групп.

 

Перетащите маркер заполнения вниз, чтобы применить эту формулу ко всем строкам — и ваши данные автоматически распределятся по группам по примерно 4 записи в каждой.
снимок экрана использования формулы для генерации случайных групп заданного объема данных

Дополнительные рекомендации:

  • Если общее количество элементов не делится на размер группы без остатка, последняя группа будет содержать меньше записей.
  • Используйте Вставить специально > Значения после рандомизации, чтобы зафиксировать группы и предотвратить их изменение при пересчёте.
  • Обновление функции RAND() повторно генерирует группы — это удобно, если исходное распределение требует корректировки.

Ограничения: Метод не позволяет напрямую задать имя группы (вместо этого он генерирует номера групп), а при работе с большими объёмами данных формула может замедлять пересчёт.


Автоматизация случайного распределения по группам с помощью VBA (Дополнительные параметры)

Для пользователей с более сложными задачами — например, когда нужно гарантировать, что участник не попадёт в несколько групп одновременно, обеспечить точный баланс размеров групп или выполнить перераспределение с учётом определённых ограничений — VBA предлагает гораздо больше гибкости. Такой подход особенно полезен при работе с большими списками или при многократном выполнении однотипных задач. Прежде чем продолжить, обязательно сохраните файл: код VBA в большинстве случаев напрямую изменяет ваши данные.

1. Нажмите Средства разработчика > Visual Basic, чтобы открыть редактор VBA, затем выберите Вставка > Модуль. Скопируйте и вставьте следующий код в новый модуль:

Sub AssignRandomGroups()
    Dim GroupCount As Integer
    Dim GroupSize As Integer
    Dim rng As Range, cell As Range
    Dim i As Long, j As Long, idx As Long
    Dim arr() As Variant, groupArr() As Variant, grpNum As Integer
    Dim ws As Worksheet
    Dim totalRows As Integer, remaining As Integer
    
    On Error Resume Next
    Set ws = Application.ActiveSheet
    Set rng = Application.InputBox("Select the range of data to group", "KutoolsforExcel", Type:=8)
    
    GroupCount = Application.InputBox("Enter the number of groups:", "KutoolsforExcel", 3, Type:=1)
    
    If rng Is Nothing Or GroupCount <= 0 Then Exit Sub
    
    arr = rng.Value
    totalRows = UBound(arr, 1)
    GroupSize = Int(totalRows / GroupCount)
    remaining = totalRows - GroupSize * GroupCount
    
    ReDim groupArr(1 To totalRows)
    Dim used() As Boolean
    ReDim used(1 To totalRows)
    
    Randomize
    
    For i = 1 To totalRows
        Do
            idx = Int(Rnd() * totalRows) + 1
        Loop While used(idx)
        
        used(idx) = True
        groupArr(i) = idx
    Next i
    
    For i = 1 To totalRows
        grpNum = Int((i - 1) / GroupSize) + 1
        If grpNum > GroupCount Then grpNum = GroupCount
        rng.Cells(groupArr(i), 1).Offset(0, 1).Value = "Group " & grpNum
    Next i
    
    MsgBox "Groups assigned randomly and as evenly as possible.", vbInformation
End Sub

2. Затем нажмите кнопку Кнопка «Выполнить», чтобы запустить код. Вам предложат выбрать диапазон данных (например, столбец с именами или ID), а после — указать количество групп, которые нужно создать. VBA распределит каждую строку данных по группам, записав номер группы в столбец сразу справа.

  • Предотвратите дублирование записей распределения: каждый участник попадает только в одну группу.
  • Сбалансированные группы: Формируются максимально равномерно. Если данные невозможно разделить поровну, в последней (или нескольких последних) группах может быть на одного участника больше или меньше.
  • Настройка: вы можете изменить код VBA, чтобы настроить текст вывода, начальный столбец или добавить дополнительные правила распределения.

Предупреждение: VBA напрямую изменяет данные на листе — обязательно создайте резервную копию перед запуском. Если возникнут ошибки (например, при выборе большего количества столбцов, чем ожидалось), повторно проверьте выделение и указанное количество групп.

Устранение неполадок: Если вкладка «Разработчик» не отображается, включите её через Файл > Параметры > Настроить ленту > Разработчик. Если возникают ошибки, убедитесь, что настройки макросов включены (Файл > Параметры > Центр управления безопасностью).

Преимущества использования: VBA идеально подходит опытным пользователям, которым нужен точный контроль, обработка больших объёмов данных или автоматизация рутинных задач. Однако для быстрых и простых операций он менее удобен — чтобы использовать VBA, необходимо включать макросы и писать или редактировать код.


Скачать образец файла

Нажмите, чтобы скачать образец файла


Другие популярные статьи


Лучшие инструменты повышения продуктивности в Office

🤖KUTOOLS AI Помощник: Преобразуйте Анализ данных с помощью:Интеллектуального выполнения   |  Генерации кода|  Создания пользовательские формулы  |  Анализа данных и построения диаграмм|  Вызова Расширенные функции
Популярные функции:Поиск, выделение или Отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячеек без потери данных   |  Округление без использования формул
Супер ПОИСК:VLookup по нескольким критериям  |  VLookup по нескольким значениям  |   VLookup по нескольким листам   |   Распознавание нечетких соответствий
Расширенный раскрывающийся список:Быстрое создание выпадающего списка   |  Зависимый выпадающий список   |  Выпадающий список с множественным выбором
Управление столбцами:Добавление заданного количества столбцов|Перемещение столбцов|Переключение видимости скрытых столбцов|Сравнение диапазонов и столбцов
Избранные функции:Сетка фокусировки   |  Просмотр дизайна   |Улучшенная строка формулы   | Управление рабочими книгами и листами   |  Библиотека ресурсов(автотекст)|  Выбор даты   |  Объединить листы  |  Шифрование/Расшифровать ячейки   | Отправка писем по списку   |  Супер фильтр   |   Специальный фильтр(Фильтр ячеек с жирным шрифтом/курсив/зачёркивание…) …
Лучшие наборы инструментов 15:12 Текстовыеинструменты(Добавить текст,Удалить определенные символы, …)|   50+Типыдиаграмм(Диаграмма Ганта, …)|   40+ Практические формулы(Рассчитать возраст на основе даты рождения, …)|   19 Инструментывставки(Вставить QR-код,Вставка изображения по пути, …)|   12 Инструментыпреобразования(Преобразовать в слова,Конвертация валют, …)|   7 Объединить и разделитьИнструменты(Расширенное объединение строк,Разделить ячейки, …)|… и многое другое
Используйте Kutools на предпочитаемом языке — поддержка английского, испанского, немецкого, французского, китайского и ещё 40+ языков!

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


Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
  • Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!

Все надстройки Kutools — один установщик

Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.

ExcelWordOutlookTabsPowerPoint
  • Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
  • Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
  • Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
  • 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек