Excel一组选项中的随机数

时间:2013-04-25 19:44:08

标签: excel excel-formula

在MS Excel中,如何从一组5个选项中随机计算一个数字?

例如,在单元格B1中,我想要一个15,30,50,75或100的随机数。

我想在单元格B1:B100中完全随机输出这5个数字。

我原以为我可以使用rand在单元格A1中生成随机数,然后使用一系列>或者< IF语句只输出上述数字之一。

4 个答案:

答案 0 :(得分:18)

这个公式可以做到:

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

如果您想使用一系列单元格:

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

答案 1 :(得分:3)

一种快速简便的方法是首先制作一个这样的查找列表:

enter image description here

然后在你的专栏中做一个这样的公式:

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

$A$7:$B$16是您的列表所在的位置。如果你真的需要隔离它,它可以在不同的选项卡或单独的文件上。

您也可以创建自定义VBA功能,但我认为这超出了您的目的。

答案 2 :(得分:0)

假设您已在电子表格的行G中填充了第1-5行,其中包含您要随机显示的值。您可以使用=INDIRECT("G"&RANDBETWEEN(1,5))随机显示其中任何一个。

`INDIRECT`允许您使用字符串引用单元格 由于你想要单元格“G1” - “G5”,我们从“G”开始 &安培;将“G”与下一个函数的值组合在一起 然后RANDBETWEEN函数将在我们提供的两个参数之间给出一个数字(在本例中为1到5)。

请告诉我这是否有帮助:)

答案 3 :(得分:-1)

怎么样:

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

e.g。如果您有一个包含要在$B$2:$B$6

中使用的5个数字的数组
=SMALL($B$2:$B$6,RANDBETWEEN(1,COUNT($B$2:$B$6)))

这将返回数字列表中的随机位置,数字的总频率被定义为数组的大小。