93

Excel: Как создать набор случайных уникальных чисел

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


Начнём с того, что сразу отсечем заблуждение о возможности использования функции СЛУЧМЕЖДУ для решения поставленной перед нами задачи. Использовать эту функцию мы не можем, так как она просто выдаёт случайное значение из указанного числового диапазона, и именно поэтому в итоговом списке могут попасться и дубликаты. Вот простейший пример:

Как ведёшь, даже среди всего (!) десяти значений, уже попадаются дубликаты.


Поэтому переходим к ознакомлению к рассматриваемым сегодня методом.


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

Естественно, шаг повышения значения, как и первое значение могут быть любыми.


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

Чтобы долго не прокручивать окно, проще всего выбрать сразу нужную ячейку В1001 с помощью вспомогательного окна «Переход», открывающегося комбинацией клавиш Ctrl+G (я это подробно показал в прикрепленном ниже видео). В видео ты также можешь увидеть, как использовать и другие комбинации клавиш для того, чтобы за доли секунды выбирать требуемые диапазоны.


Теперь мы будем рандомно сортировать полученные значения. Для этого сперва их целиком копируем и вставляем в качестве статичных значений (вставка в качестве значений):

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

Соседний столбец случайных значений будем заполнять с помощью функции СЛЧИС, которая выводит случайное нецелое число большее или равное 0, но меньшее 1:

Всё. Всё готово для того, чтобы мы придали нашим уникальным значениям случайный порядок. Делать мы это будем при помощи сортировки значений. Для этого выбираем заголовок нашей таблички, и во вкладке «Данные» щелкаем по кнопке «Фильтр». В итоге у нас добавляются кнопки фильтра:

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

Готово! Как видишь, теперь уникальные значения перемешаны случайным образом:

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


Кроме того, если тебе, например, нужны однотипные по форматированию значения (например, лишь четырехзначные значения), то это тоже очень просто можно провернуть с помощью функции ТЕКСТ. Как это сделать я рассказал в своём коротком видео на сегодняшнюю тему. Предлагаю тебе его посмотреть, так как в нём ты найдешь еще больше полезных советов, начиная от использования комбинаций клавиш, вплоть до дополнительной информации о применяемых функциях:

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


Приятного просмотра, и до встречи на моём канале! 😊

MS, Libreoffice & Google docs

764 поста14.9K подписчиков

Правила сообщества

1. Не нарушать правила Пикабу

2. Публиковать посты соответствующие тематике сообщества

3. Проявлять уважение к пользователям

4. Не допускается публикация постов с вопросами, ответы на которые легко найти с помощью любого поискового сайта.

По интересующим вопросам можно обратиться к автору поста схожей тематики, либо к пользователям в комментариях


Важно - сообщество призвано помочь, а не постебаться над постами авторов! Помните, не все обладают 100 процентными знаниями и навыками работы с Office. Хотя вы и можете написать, что вы знали об описываемом приёме раньше, пост неинтересный и т.п. и т.д., просьба воздержаться от подобных комментариев, вместо этого предложите способ лучше, либо дополните его своей полезной информацией и вам будут благодарны пользователи.

Утверждения вроде "пост - отстой", это оскорбление автора и будет наказываться баном.

Вы смотрите срез комментариев. Показать все
ЭТО БАЗА
Автор поста оценил этот комментарий

Я нихуя не понял. Это охуенно странный пост. Чем случмежду не подходит с трудом понятно.


Аргумент что числа повторяются в диапазоне 1:10 охуенно странный сам по себе. Надо было для большей наглядности взять диапазон 1:3.

Иллюстрация к комментарию
раскрыть ветку (23)
0
ЭТО БАЗА
Автор поста оценил этот комментарий

А в диапазоне 1000:9999 сколько дубликатов встречается? Сможешь посчитать как-нибудь в экселе? С помощью вба наверное это будешь делать?

Иллюстрация к комментарию
раскрыть ветку (22)
Автор поста оценил этот комментарий

Скопируй весь список и вставь в виде значений. Затем выбери все значений и иди в «Данные» -> «Удалить дубликаты» - там увидишь, насколько много дубликатов у тебя встретится в этом столбце. При этом по условию задачи нам нужны именно уникальные числа в этом списке.

раскрыть ветку (21)
0
ЭТО БАЗА
Автор поста оценил этот комментарий

"Уникальные числа в списке" это обычный счетчик 1 -> n. Ну хотя n слишком мало, давай возьмем m.


А вот на кой хуй этот колхоз на костылях городить, который ты городишь видимо останется тайной.

раскрыть ветку (20)
Автор поста оценил этот комментарий

Ну ты название поста-то не обрезай хоть в свою пользу: в название прямо указанно "Как создать набор случайных уникальных чисел". Это во-первых. Во-вторых, понятное дело, в повседневных ситуациях мы вынуждены решать задачи подручными методами, поэтому и значения здесь по сути не случайные, а псевдослучайные. Если уж ты к этому так придираешься, то тебе путь в высшую науку - туда, где реально случайные числа получают с помощью процессов ядерного распада.

раскрыть ветку (19)
1
ЭТО БАЗА
Автор поста оценил этот комментарий

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


Если тебе нужно 5000 таких чисел -> создаешь столбец случмежду на 10000 чисел, удаляешь дубликаты, из получившегося списка берешь нужные 5000 чисел. Все, вы потратили 5 секунд, задача решена, вы великолепны, можете пить чай.


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

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

раскрыть ветку (18)
Автор поста оценил этот комментарий

Ты прикалываешься, или серьезно? Еще раз, на этот раз максимально коротко: СЛУЧМЕЖДУ не гарантирует уникальности чисел.

раскрыть ветку (17)
1
ЭТО БАЗА
Автор поста оценил этот комментарий

Ты прикалываешься, или серьезно? Ее гарантирует действие "удалить дубликаты". Это пиздец какой-то.


Еще раз алгоритм действий на пальцах, если с восприятием написанного текста тяжело:

1) случмежду

2) удалить дубликаты

3) взять нужное количество уникальных случайных чисел

раскрыть ветку (16)
Автор поста оценил этот комментарий

Ахах, мне уже просто из принципа интересно продолжать эту дискуссию.


Если тебе нужны будут значения виз диапазона 1 до 999 – также будешь поступать? Просто попробуй проделать описанные тобой шаги в Excel, и увидишь сколько будет дубликатов. В таком случае, полагаю, придётся сидеть и вручную дополнять, и дополнять список таким подходом, пока не получишь нужно число лишь уникальных значений, или?


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

раскрыть ветку (15)
1
ЭТО БАЗА
Автор поста оценил этот комментарий
Если тебе нужны будут значения виз диапазона 1 до 999

Сколько уникальных трехзначных значений тебе нужно?

раскрыть ветку (14)
Автор поста оценил этот комментарий

Да хоть 500. Даже всего с этими пятьюстами запаришься.

раскрыть ветку (13)
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества