Excel 中随机类函数常用于产生随机数。随机数可广泛用于各类抽奖、抽查及分类分组等活动中。
RANDBETWEEN 函数
RANDBETWEEN(最小整数, 最大整数)
返回位于两个指定数之间的一个随机整数。
提示:RANDBETWEEN 函数可能会产生相同的随机整数。
应用 1:抽奖。
比如在 14 名员工中抽奖,可使用 RANDBETWEEN(1, 14) 产生一个介于 1 ~ 14 之间的整数,再借助 INDEX 函数即可找到对应的员工姓名。
=INDEX(C3:C16,RADNBETWEEN(1,14))
![]()
提示:按 F9 可重新计算工作表,产生新的随机整数。
有关 INDEX 函数的使用方法请参阅《 》。
应用 2:随机分配A、B卷。
![]()
=INDEX($H$3:$H$4,RANDBETWEEN(1,2))
也可借助 CHOOSE 函数来实现,此方法的好处是不再需要依赖辅助表格。公式:
=CHOOSE(RANDBETWEEN(1,2),"A卷","B卷")
![]()
此方法同样适用于随机分组的案例。不过,还有一个问题需要解决,即,如何保证均等分配A、B卷或者平均分组呢?
RAND函数
RAND( )
相对于 RANDBETWEEN 函数,RAND函数不存在相同随机数的问题。
说明:
1、RAND()函数没有参数,直接使用。
2、若要生成 a 与 b 之间的随机实数,请參考下列公式:
=RAND()*(b-a)+a
应用 1:均等分组
![]()
处理思路:
=RAND()
然后使用 RANK 函数对乱序列排位,
=RANK(D3,$D$3:$D$16)
再将排位结果除以人数的一半,
=RANK(D3,$D$3:$D$16)/(COUNT($D$3:$D$16)/2)
使用 ROUNDUP 函数使上式结果进位到最接近的整数,
=ROUNDUP(RANK(D3,$D$3:$D$16)/(COUNT($D$3:$D$16)/2),0)
最后,使用 CHOOSE 函数显式显示分组。
=CHOOSE(ROUNDUP(RANK(D3,$D$3:$D$16)/(COUNT($D$3:$D$16)/2),0),"A组","B组")
特别提示:随机数产生之后,在所有的单元格处进行的任何编辑,都将导致重新产生随机数。
解决方法:随机数产生后,框选并右击,选择“选择性粘贴”中的“值”,即用数值覆盖公式。这样就不会再重新产生随机数了。
应用 2:同时抽奖多名(不重复)
![]()
=RANK(D3,$D$3:$D$16)
然后使用 INDEX 函数找到对应姓名。
=INDEX($C$3:$C$16,RANK(D3,$D$3:$D$16))
这样,就不会有重复的名字了。
CHOOSE 函数
CHOOSE(索引值,选项1,选项2,选项3,...)
如同做选择题一样,根据给定的索引值,从参数串中选出相应值或操作。
=SUM(CHOOSE(2,A1:A10,B1:B10,C1:C10))
相当于:
=SUM(B1:B10)
ROUNDUP 函数
ROUNDUP(数值,位数)
向上舍入函数。将对应位数的数值向上舍入到最接近的数值。
![]()
比如,位数为 0 时,则在个位数上进行向上舍入:
=ROUNDUP(3.14159,0)
结果为 4。
位数为大于 0 的数时,则在对应的小数位上进行向上舍入:
=ROUNDUP(3.14159,3)
结果为 3.142。
位数为小于 0 的数时,则在对应的整数位上进行向上舍入:
=ROUNDUP(314.159,-2)
结果为 400。
“有钱的捧个钱场,好看的点下在看”
到此这篇生成范围内的随机数(随机在范围内生成)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/bcyy/31217.html