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

Перемешайте список в Excel (простое пошаговое руководство)

АвторАманда ЛиДата изменения

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

Снимок экрана, иллюстрирующий результат рандомизации в Excel

Видео: Перемешивание списка в Excel


Перемешивание списка с помощью функций

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

Перемешайте список с помощью функции СЛЧИС

Пользователи любой версии Excel могут легко и случайным образом отсортировать исходный набор данных с помощью функции СЛЧИС и стандартной функции сортировки. Выполните следующие шаги.

Шаг 1: Введите формулу СЛЧИС

Выберите ячейку рядом с верхней ячейкой списка, который вы хотите перемешать, введите приведённую ниже формулу СЛЧИС и нажмите «Enter».

=RAND()

Формула СЛЧИС в ячейке

Шаг 2: Заполните формулу СЛЧИС в другие ячейки

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

Формула СЛЧИС применена к другим ячейкам

Шаг 3: Отсортируйте результаты СЛЧИС, чтобы перемешать список

1. Выделите диапазон «B2:B8», содержащий формулу СЛЧИС.

2. Нажмите «Сортировка и фильтр» > «Сортировка от наименьшего к наибольшему» в группе «Редактирование» на вкладке «Главная».

Команда «Сортировка от минимального к максимальному» на ленте

3. В появившемся диалоговом окне выберите «Расширить выделение» и нажмите кнопку «Сортировать».

Выбор параметра «Расширить выделенный диапазон»

Результат

Теперь всё готово! Список перемешан, как показано ниже.

Список рандомизирован

Примечание: функция СЛЧИС Excelявляется volatile: она пересчитывает результат при каждом изменении листа. Поэтому числа в столбце B немедленно изменились после сортировки. Чтобы перемешать список снова, повторите указанный выше шаг3. В противном случае просто удалите столбец с функцией СЛЧИС.
Перемешайте список с помощью функций СЛУЧМАСС, СОРТПО и СТРОК (Excel 365/2021)

Если вы используете более новые версии Excel — например, Excel для Microsoft 365, Excel 2021 или Excel для Интернета, — формулы RANDARRAY, SORTBY и ROWS позволят быстро перемешать список прямо на месте.

Шаг 1: Введите формулу СЛУЧМАСС, СОРТПО и СТРОК

Выберите пустую ячейку, куда нужно поместить перемешанный результат, введите приведённую ниже формулу (обратите внимание: замените «)A2:A8» в формуле на диапазон исходного списка, который требуется перемешать) и нажмите «Enter».

=SORTBY(A2:A8,RANDARRAY(ROWS(A2:A8)))

Примечание:
  • Excel выдаст ошибку «#ПЕРЕП!», если диапазон перелива (в данном случае B2:B8) не пуст.
  • Формула является volatile: она пересчитывает результат при каждом изменении листа. Чтобы перемешать список ещё раз, нажмите F9.
  • Результат формулы (перемешанный список) недоступен для редактирования. Если вам нужно отредактировать перемешанный список, перейдите к следующему шагу.

(Необязательно) Шаг 2: Скопируйте и вставьте результат формулы, чтобы его можно было редактировать

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

1. Выделите результат формулы и нажмите «Ctrl» + «C», чтобы скопировать его.

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

3. Выберите в контекстном меню опцию «Вставить значения».

Результат

Теперь у вас есть перемешанный и редактируемый список, как показано ниже.


Перемешайте список в Excel с помощью Kutools всего за 2 кликов

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

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

Сначала выделите список, который нужно перемешать. Затем выберите «Kutools» → «Диапазон» → «Сортировать, выбирать или случайно перемешивать». В появившемся диалоговом окне «Сортировать, выбирать или случайно перемешивать» выберите «Вся строка» и нажмите «ОК».

Выбор параметра «Все строки» в диалоговом окне для перемешивания списка

Примечание:

Перемешивание списка с помощью VBA

Если вы предпочитаете перемешивать список с помощью метода VBA, следуйте приведённым ниже инструкциям.

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

Шаг 1: Выделите список, который нужно перемешать

Выбран список, который необходимо перемешать

Шаг 2: Скопируйте код VBA в окно модуля

1. Нажмите «Ctrl» + «F11», чтобы открыть редактор VBA, затем выберите «Вставка» > «Модуль» и откройте окно кода модуля.

Нажмите «Вставка» > «Модуль» в редакторе VBA

2. Скопируйте приведённый ниже код VBA и вставьте его в открывшееся окно модуля.

Sub RandomSort()
'Update by ExtendOffice
Dim xRg As Range
Dim xNum, xF, xI As Integer
Dim xWSh, xAWSh As Worksheet
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xAWSh = Application.ActiveSheet
Set xRg = ActiveWindow.RangeSelection
Set xWSh = Worksheets.Add
xNum = xRg.Count
For xF = xNum To 1 Step -1
    xI = WorksheetFunction.RandBetween(1, xF)
    xWSh.Range("A1").Value = xRg.Item(xI)
    xRg.Item(xI) = xRg.Item(xF)
    xRg.Item(xF) = xWSh.Range("A1")
Next
xWSh.Delete
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub

Шаг 3: Запустите код VBA

В окне кода нажмите «F5» или щелкните кнопку Кнопка «Выполнить», чтобы запустить этот код.

Кнопка «Выполнить» в окне кода

Результат

Список перемешан

Примечание: чтобы перемешать список снова, повторите указанный выше ша3.