Excel - выбор чисел из большего набора данных

245
Dylan

У меня есть вопрос о Excel (надеюсь, на правильном форуме)

У меня есть данные 100 номеров в Excel, и я хочу случайным образом выбрать 30 номеров с тем фактом, что тот же номер не будет выбран снова (поэтому, удалив номер, который уже был выбран)

И я сталкиваюсь, не зная, как это сделать? Я пытался с RANDBETWEEN (1; 100) и копировать его 30 раз, но это / может повторить тот же номер.

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

0
Возможный дубликат [MS Excel: уникальный генератор случайных чисел в диапазоне] (http://superuser.com/questions/614928/ms-excel-unique-random-number-generator-within-a-range) DavidPostill 7 лет назад 2
@Raystafarian: Я согласен с тем, что предложенный Дэвидом обман не решает вопрос, но и тот, который вы предложили; в ней отсутствует критическая часть, которую вы разъяснили в своем ответе. Я не могу представить, однако, что об этом раньше не спрашивали. fixer1234 7 лет назад 0
@ fixer1234 Я знаю, что это не моя первоначальная мысль, я видел это по крайней мере один раз, так что да - я думаю, что проблема заключается в формулировании этого вопроса во время поиска, соответствующие вещи скрыты. Raystafarian 7 лет назад 0
Возможные дубликаты - [рандомизировать порядок столбцов данных в Excel] (http://superuser.com/questions/117933/randomise-the-order-of-a-column-of-data-in-excel) и [ Случайный выбор в Excel на основе некоторых критериев] (http://superuser.com/questions/1028199/random-selection-in-excel-based-on-some-criteria) Raystafarian 7 лет назад 0
@Raystafarian: LOL. Показатели идеального дублирования будут закрыты как слишком широкие, потому что «мы не сервис написания сценариев». fixer1234 7 лет назад 1
@Raystafarian: Я проголосовал, чтобы открыть ваш второй предложенный обман. fixer1234 7 лет назад 0

1 ответ на вопрос

2
Raystafarian

Seriously, separate from the VBA as you don't want VBA, use a filter. Put a column next to your range and fill it with =Rand()

Drag it down. Then copy and paste special - values over top if itself.

Now just sort it ascending or descending and pick either the first 30 or last 30 as your selection.

It's about 99.999% effective unless you have millions in your list.

enter image description here

Похожие вопросы