在 Excel 中,生成随机数可以用Rand函数或RandBetween函数,其中前都用于生成 0 到 1 的小数随机数,后者用于生成指定范围的整数随机数。Rand函数也可以生成指定范围的随机数,但要用公式 =RAND()*(b-a) a,且生成的随机数仍然为小数。
直接用Rand函数或RandBetween函数生成随机数,都可能产生重复的随机数,如果要求生成不重复的随机数,需先产生种子再用种子生成随机数,或用 Small IF COUNTIF Row INT Rand 函数生成。在默认情况,用Rand函数或RandBetween函数生成的随机数容易发生变化,如果要求生成不变的随机后,需要把它们转为数值。
一、Excel随机数产生函数的语法(一)Rand函数
1、表达式:RAND()
2、说明:
A、Rand函数用于生成 0 到 1 之间的随机数;如果要生成 a 与 b 之间的随机数,需要使用 RAND()*(b-a) a;例如生成 1 到 100 的随机数,可以用公式 =RAND()*(100-1) 1。
B、用Rand函数生成的随机数,每次计算工作表时会变为另一个随机数,如果要求不变,输入公式 =RAND() 后,保持编辑状态,按 F9 把公式转为数值,具体见下文的实例。
(二)RandBetween函数
1、表达式:RANDBETWEEN(Bottom, Top)
2、说明:
A、RandBetween函数用于生成任意两个指定数之间的随机数,参数 Bottom 为指定数值范围的最小值、Top 为指定数值范围的最大值。
B、与Rand函数一样,RandBetween函数生成的随机数,每次计算工作表时也会变为另一个随机数,如果要求已生成的随机数不变,输入完公式后,按 F9 把公式转为数值即可。
二、Excel随机数产生函数 Rand 的使用实例(一)生成 0 到 1 之间的固定不变的小数随机数
选中 A1 单元格,输入公式 =rand(),按回车,返回随机数 0.500716885;双击 A1,按回车,随机数变为 0.140809335,每执行一次公式,随机数会变化;再次双击 A1,按 F9,则公式转为随机数 0.859460188902102,再怎么双击 A1,也不会出现公式,随机数也不会再变化;操作过程步骤,如图1所示:
图1
(二)生成指定范围的随机数
1、假如要生成 100 到 1000 之间的随机数。双击 A1 单击格,把公式 =INT(RAND()*(1000-100) 100) 复制到 A1,按回车,返回随机数816;操作过程步骤,如图2所示:
图2
2、公式 =INT(RAND()*(1000-100) 100) 说明:
用 Rand 函数生成 100 到 1000 之间的随机数可用公式 =RAND()*(b-a) a,a 为 100,b 为 1000,但用此公式生成的随机数是小数,如果要生成整数的随机数, 要用 Int 函数取整。
三、Excel随机数产生函数 RandBetween 的使用实例(一)生成指定范围的固定不变的整数随机数
假如要生成 0 到 100 之间的随机数。双击 A1 单元格,把公式 =RANDBETWEEN(0,100) 复制到 A1,按回车,返回随机数 57;双击 A1,按回车,随机数变为 15,每执行一次公式,随机数也会变化;再次双击 A1,按 F9,把公式转为数值 10,再双击 A1,不会再出现公式;操作过程步骤,如图3所示:
图3
(二)生成正负数之间的随机数
假如要生成 -100 到 100 之间的随机数。双击 A1 单元格,把公式 =RANDBETWEEN(-100,100) 复制到 A1,按回车,返回随机数 9;再次双击 A1,按回车,返回随机数 -99;操作过程步骤,如图4所示: