我在MS Excel 2007中找到了一个非常好的功能,它RANDBETWEEN(bottom, top)
。这样做的问题是它只随机化整数。使用此公式:
=RANDBETWEEN(7.0, 9.9)
收益 率
8.0
9.0
7.0
7.0
etc...
我如何修改它,使其也产生如下十进制数
7.5
7.2
9.4
9.5
7.1
8.5
etc...
使用 randbetween(70,99)
并将结果除以 10。
参考此 http://ms-office.wonderhowto.com/how-to/generate-random-numbers-with-decimals-excel-338595/
30-40 之间的随机十进制数
=rand()*10+30
0-100 之间的随机十进制数
=rand()*100+0
由于RANDBETWEEN()
过去仅在分析工具库中可用(并且在未安装工具库时产生 #NAME?错误),因此最好使用 RAND()
向后兼容,乘法和相加以将范围移位并舍入到小数点后一位:
=ROUNDUP(7 + RAND() * (9.9 - 7 - 0.1), 1) ' Excludes 7.0 and 9.9
=ROUNDUP(7 + RAND() * (9.9 - 7), 1) ' Excludes 7.0, includes 9.9
=ROUNDDOWN(7 + RAND() * (9.9 - 7), 1) ' Includes 7.0, excludes 9.9
=ROUNDDOWN(7 + RAND() * (9.9 - 7 + 0.1), 1) ' Includes 7.0 and 9.9
但是RANDBETWEEN()
问题现在只是一个向后兼容性问题,因此,如果您确定电子表格仅在Excel 2007及更高版本中使用,则可以使用这两种方法。