2013-04-25 3 views
9

В MS Excel, как я могу случайным образом рассчитать числовое число из одного из пяти вариантов?Excel Случайное число из набора опций

Например, в ячейке B1 Я хотел бы иметь случайное число, которое либо 15,30,50,75 или 100.

Я хотел бы полностью случайный выход из этих 5 чисел в ячейках В1 : B100.

Я думал, что могу сгенерировать случайное число в ячейке A1 с использованием rand, а затем использовать ряд> или < операторов IF для вывода только одного из этих чисел выше.

+1

Возможный дубликат [Excel RANDBETWEEN как строка] (http://stackoverflow.com/questions/16077013/excel-randbetween-as-a-string) –

ответ

17

Эта формула будет делать это:

=CHOOSE(RANDBETWEEN(1,5),15,30,50,75,100) 

Если вы хотите использовать диапазон ячеек:

=INDEX($B$2:$B$6,RANDBETWEEN(1,5)) 
+1

ВЫБОР был идеальным решением для меня в этом случае. +1 для альтернативы, когда у меня может быть диапазон ячеек. Спасибо – Ryan

0

Допустим, вы заполнили строки 1-5 в строке G из таблицы с значения, которые вы хотите случайно отобразить. Вы можете использовать =INDIRECT("G"&RANDBETWEEN(1,5)) для отображения любого из них случайным образом.

`INDIRECT` позволяет ссылаться на ячейку, используя строку.
Поскольку вы хотите, чтобы ячейки «G1» - «G5», мы начинаем с «G».
& объединяет «G» со значением следующей функции.
Тогда функция RANDBETWEEN даст нам число между двумя параметрами, которые мы предоставляем (в данном случае от 1 до 5).

Позвольте мне знать, если это помогает :)

+0

Это проще, чем другие ответы, хотя я не думаю, что он надежный в «производстве» или в крупномасштабной электронной таблице. –

3

быстрый и простой способ будет первым сделать список подстановок как это:

enter image description here

Затем в столбце сделать формулу, как это :

=VLOOKUP(ROUND(RAND()*10,0),$A$7:$B$16,1,FALSE) 

где $A$7:$B$16 где ваш список находится. Это может быть на другой вкладке или отдельном файле, если вам действительно нужно ее изолировать.

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

+1

хе-хе .. три решения размещены все сразу. Мне нравится Дуг лучше меня. Упрощенный! –

+0

+1 для изображения. – asifrc

-1

Как насчет:

=SMALL({array containing numbers},RANDBETWEEN(1,COUNT({array containing numbers}))) 

например если у вас есть массив, содержащий 5 цифр, которые вы хотите использовать в $B$2:$B$6

=SMALL($B$2:$B$6,RANDBETWEEN(1,COUNT($B$2:$B$6))) 

Это возвращает случайное положение в списке номеров, с общей частотой чисел определяется размер массива.

Смежные вопросы