RAND函数返回大于或等于0且小于1的平均分布随机数,并且每次在工作簿重新计算时值都会改变。
图1
什么情况下使用RAND函数?
RAND计算随机数,其值大于等于0且小于1。在每次工作表重新计算时,都会返回一个新的随机数。可以使用RAND函数生成模拟的数据,来实现一些测试或效果。它能够:
生成指定范围的随机数
生成随机整数
生成随机账号
生成随机字母
生成不重复的随机数
RAND函数语法
RAND函数没有参数,其语法如下:
RAND()
如果不希望RAND函数生成的随机数在每次计算单元格时都发生变化,可以在编辑栏中输入=RAND(),然后按F9键将公式更改为随机数,按回车键完成字面量输入。公式执行计算后,仅返回一个值。
RAND函数陷阱
RAND函数是易失性函数,也就是说每当工作表重新计算时该函数都会重新计算,即便工作表看起来没有变化。工作表重新计算包括重新计算公式、打开工作表、编辑工作表中的单元格,RAND函数值都将发生变化。
RAND函数生成的随机数不包括上限,即1。
示例1: 生成指定范围的随机数
使用RAND函数,可以生成0至1之间的随机数,也可以生成指定的两个值之间的随机数。如图2所示,公式:
‘=RAND()
返回大于等于0小于1之间的随机数。
公式:
=RAND()*10
返回大于等于0小于10之间的随机数。
公式:
=10+RAND()*40
返回大于等于10小于50之间的随机数。
图2
一般来说,公式:
=RAND()*(b-a) + a
生成a与b之间的随机数。
示例2:生成随机整数
结合取整函数,例如INT函数,可以生成随机整数。
如图3所示,公式:
=INT(RAND()*10)
生成0至10之间的整数。
公式:
=INT(RAND()*20+10)
生成10至20之间的整数。
图3
示例3:生成随机账号
下面的公式:
=INT(RAND()*(1000000-100000)+100000)
将随机生成一个6位数的账号。
通常,要生成n位随机数,可以使用下面的通用公式:
示例4:生成随机字母
下面的公式:
=CHAR(INT(RAND()*26+1)+64)
随机生成大写字母A至Z。由于大写字母的ANSI编码为65至90,因此公式中使用INT(RAND()*26+1)生成1至26的随机数,然后加上64,使数字的区间在65至90,使用CHAR函数将数字转换成相应的字母。
同理,下面的公式:
=CHAR(INT(RAND()*26+1)+96)
随机生成小写字母a至z。
示例5:生成不重复的随机数
使用RAND函数时,生成的随机数可能重复,我们可以使用下面的公式来生成不重复的随机数:
=INT(RAND()*10+1)+ROW()/10
结果如图4所示。
图4
欢迎分享本文,转载请注明出处。
欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。
联系客服