Перейти к основному содержанию

Рандомизация списка в Excel (простое пошаговое руководство)

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


Видео: Рандомизация списка в Excel


Рандомизировать список с функциями

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

Рандомизировать список с помощью функции RAND

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

Шаг 1. Введите формулу RAND.

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

=RAND()

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

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

Шаг 3. Отсортируйте результаты RAND, чтобы перетасовать список.

1. Выбрать B2: B8, список, содержащий формулу RAND.

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

3. Во всплывающем окне Предупреждение о сортировке диалоговое окно, выберите Расширить выбор, а затем нажмите Сортировать.

Результат

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

Примечание: Ассоциация Excel функция СЛУЧАЙ является изменчивым: он пересчитывает свой результат при каждом изменении рабочего листа. Итак, числа в столбце B изменились мгновенно после сортировки. Если вы хотите снова перетасовать список, повторите вышеописанное шаг 3. В противном случае вы можете просто удалить столбец с помощью функции RAND.
Рандомизация списка с помощью функций RANDARRAY, SORTBY и ROWS (Excel 365/2021)

Если вы являетесь пользователем более новых версий Excel, например Excel для Microsoft 365 или Excel 2021, или Excel для Интернета, РАНДАРРАЙ, СОРТИРОВАТЬ ПО и РЯДЫ формула поможет вам быстро получить список, перемешанный в указанной вами позиции.

Шаг 1. Введите формулы RANDARRAY, SORTBY и ROWS.

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

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

Примечание:
  • #ПРОЛИВАТЬ ошибки возвращаются, когда диапазон разлива (B2: B8 в этом случае), поскольку формула не пуста.
  • Формула изменчива: она пересчитывает результат при каждом изменении рабочего листа. Если вы хотите снова перетасовать список, нажмите F9.
  • Результат формулы (рандомизированный список) недоступен для редактирования. Если вам нужно отредактировать рандомизированный список, выполните следующий шаг.

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

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

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

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

3. Выберите Вставить только значения вариант из контекстного меню.

Результат

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


Рандомизируйте список в Excel с помощью Kutools в 2 клика

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

Сначала выберите список, который вы будете перемешивать. А затем выберите Кутулс > Диапазон > Сортировка / выбор диапазона случайным образом. Во всплывающем окне Сортировка / выбор диапазона случайным образом диалоговое окно, выберите Целые строки, а затем нажмите Ok.

Примечание:

Рандомизировать список с помощью VBA

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

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

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

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

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

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

Код 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.
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations