1、RAND 函数
RAND 函数是一个没有参数的函数:RAND () 返回一个大于等于 0,小于 1的随机实数。
选中任一单元格,在编辑栏输入公式:
如果要生成 a 与 b 之间的随机数,就用:
=RAND()*(b-a)+a
比如要生成-5 到 8 范围的随机数,就把 a=-5,b=8 代入公式中,写成:=RAND()*13-5
2、RANDBETWEEN 函数
再来说说 RANDBETWEEN 函数。比如要构造一列年龄在 18 到 60 周岁范围内的随机值,效果如下图 B 列所示:
这时,我们就可以用 RANDBETWEEN 函数。
在 B3 单元格输入公式,然后下拉复制填充公式:=RANDBETWEEN(18,60)
RANDBETWEEN 函数用于生成一个介于两个指定数字之间的随机整数。语法为:
=RANDBETWEEN (最小整数,最大整数)
RANDBETWEEN (18,60) 生成了一个介于 18 和 60 之间的随机整数。
当然 RANDBETWEEN 函数也可以与其它函数嵌套使用,随机生成文本。
比如随机生成一列表示性别的文本值,如下图,在 C3 单元格输入公式并向下拖动填充:=CHOOSE(RANDBETWEEN(1,2),"男","女")
解释一下公式:首先 RANDBETWEEN (1,2) 返回一个介于 1 与 2 的随机整数;然后用 CHOOSE 函数根据这这个值选择对应的文本内容:
如果整数是 1,返回 "男",如果是 2 返回 "女"。
由此可见,RANDBETWEEN 函数对于快速生成测试数据非常有用!
3、RANDARRAY 函数
最后用一个实例,讲讲 RANDARRAY 函数。如下图,怎么将 B 列的名单顺序随机打乱,效果如 D 列:
这里用RANDARRAY函数,在D3输入公式:=SORTBY(B3:B13,RANDARRAY(COUNTA(B3:B13))
**公式解析:**首先用 COUNTA 函数计算单元格区域 B3:B13 的文本个数,也就是这列名单的人数。
然后用 RANDARRAY 函数根据人数生成一列不重复随机值。
最后用 SORTBY 函数,以这列随机值作为排序依据,对名单区域 B3:B13 进行排序。
由此可见,RANDARRAY 函数的最大突破是可以生成一组不重复的随机值。
4、写在最后
在 Excel 中,有三个随机函数:
RAND 函数:返回一个大于等于 0 且小于 1 的随机值;
RANDBETWEEN 函数:该函数返回一个在指定范围内的随机整数;
RANDARRAY 函数:可以生成一组随机值。