随机函数用处大,随机安排考生座位

下图左表是12名考生,现将其随机安排在6行2列的考试座位中,结果如右表所示。如果让你来做,你会怎么做?


1.一步到位,多单元格数组公式

选中D3:E8,输入下面的公式,按ctrl+shift+enter。

=INDEX(B3:B14,RIGHT(SMALL(RANDBETWEEN(A3:A14^0,999)/1%+A3:A14,ROW(1:6)*2-{1,0}),2))

RANDBETWEEN(A3:A14^0,999)这部分用randbetween生成介于1~999的12个随机数,结果为一个数组。A3:A14是1~12的自然数序列,A3:A14^0返回12个1。

RANDBETWEEN(A3:A14^0,999)/1%+A3:A14这部分用上面得到的12个随机数乘以100,再加上1~12的序列号。这样就得到加权处理后的一个新数组。这个新数组中每个元素后2位的序号分别是1~12。

ROW(1:6)*2-{1,0}这部分返回的结果如下图所示。得到了一个6行2列的数组,结果分别是1~12,与座位的大小一致。

SMALL(RANDBETWEEN(A3:A14^0,999)/1%+A3:A14,ROW(1:6)*2-{1,0})这部分用small函数从加权后的数组中分别提取第1,2,3,···,12个最小值。也就是将加权后的数组从小到大排序。这一步的目的是将每个元素后2位的序号顺序打乱。

然后用right从上一步的结果中截取出右边的2位,得到了打乱顺序的1~12的序号。最后用index返回B3:B14这个区域中对应的姓名。

因为随机函数是易失性函数,结果会变化,所以不好截图说明。下面选取其中1组随机数来进行简单演示和说明。

①是由randbetween产生的介于1~999的12个随机数;②是由①的结果乘以100,再加上1~12的序号得到的,可以看到每个数字的后2位分别是1~12;③是row函数产生的6行2列的二维数组。

④是用small函数从②中分别提取第1,2;3,4;···,12个最小值得到的,也就是②和③共同得到④,可以看到每个数字的后2位不是1~12的顺序了,已经被重排了。⑤是用right从④中截取右边2位数得到的。这样就得到了随机排列的1~12的序号。

2.辅助列法,公式简单

如果看不懂第1种方法,可以用下面的辅助列法。其中G3:H8是辅助列,选中G3:H8,输入公式=rand(),按ctrl+enter批量填充。然后在D3单元格输入下面的公式,右拉下拉填充。

=OFFSET($B$2,RANK(G3,$G$3:$H$8),)

rand生成的随机数基本上是不会重复的,然后用rank计算每个随机数在全部12个随机数中的排名,返回的结果肯定是1~12中的一个数,并且这12个结果也不会重复。也就是无论怎么变化,都是1~12这12个数,只不过顺序和位置不同。

玩过数独的小伙伴都知道,每个九宫格里只能是1~9这9个数。

如果你不理解,可以把rank那部分提出来,单独查看结果。最后以B2单元格为起点,用offset偏移对应的行数,返回对应的姓名。

链接:

https://pan.baidu.com/s/1LwNxa8_19Cb6Ar_RylNvzg

提取码:nnti
(0)

相关推荐

  • 菜鸟记146-在EXCEL中生成“随便”的数据

    注:本图由专业摄影师甜甜溪水授权使用 关键词:EXCEL2016:RAND函数:RANDBETWEEN函数:ROUND函数:INDEX函数:操作难度*** 温馨提示:结合以下参考文献阅读收获更大 &l ...

  • 2020年会必备,Excel轻松制作抽奖小游戏

    不知不觉就到了年底,新的一年即将从明天开始.时光流逝,不禁让人感慨万千. 当然在这个时间大家应都在期待着年终奖.年会吧.今天我想和大家分享一个Excel制作的抽奖小游戏,可以一次抽一人也可以一次抽多人 ...

  • 【Excel】随机数:生成不重复随机整数的技巧

    Word技巧达人推荐搜索 Word课程 Word表格 段落 邮件合并 样式 图表 今天来讨论一下随机数: 在 Excel 中生成随机数的函数不少,例如:Rand.Randbetween--.. Ran ...

  • 批量输入随机数和随机字母

    明天就是国庆长假了,小编祝各位亲们国庆节快乐,中秋节和家人大团圆. 今日分享如下: 工作中有时候需要在单元格区域随机输入数字或字母,如果一个个手工输入,效率很低.怎样批量输入随机数呢?请看下文. 一. ...

  • 随机函数rand用处大

    今天说一个随机函数,虽然这个函数是挺简单的,但是它的用处还是挺大的.这个函数就是rand函数,它返回一个大于等于0且小于1的平均分布的随机实数.简单来说就是返回一个大于等于0且小于1的随机数,而且每次 ...

  • 提醒!志愿填报千万避开这10大误区,考生、家长一定要看!

    看了那么多填报志愿的指南以及建议,各位同学和家长们有没有了解过这其中存在的问题呢?今天为大家整理了报考时常见的10大误区,赶紧看看!! 误区一:一门心思想报考名校 正解:"名牌"大 ...

  • 2021高中生物96个高频重点大总结!考生必看~

    -文章来源- ▍本文编辑:生物姐 , ▍来源:本文来源网络,版权归相关权利人所有,如侵权,请联系删除. 点击"

  • 『皮肤病』仙人掌用处大,治恶疮还能救小动物!

    无论家里的小猫.小狗,一但发现药物中毒,请你不要慌乱,立即用几片仙人掌把刺刮掉,用 蒜臼子捣烂,在用纱布把捣碎的仙人掌汁液挤出来,给药物中毒的小动物服用,不过半个钟头就缓解过来了,十分灵验! 还有身上 ...

  • 提醒!志愿填报千万避开的10大误区,考生、家长一定要看!

    看了那么多填报志愿的指南以及建议,各位同学和家长们有没有了解过这其中存在的问题呢?今天为大家整理了报考时常见的10大误区,赶紧看看!! 误区一:一门心思想报考名校 正解:"名牌"大 ...

  • 大括号,用处大,{1,0} {1;0}中间分号逗号是干啥?

    函数公式.职场模板.财务应用.分析图表.练习题.软件工具.表格合并.Office 365.Power Query.表格美化.符号作用.条件格式.学会骗.一本不正经.避坑指南.数据整理.筛选技巧

  • 复合多糖用处大吗?

    随着多糖研究热潮的兴起,人们对多糖,特别是复合多糖,也前所未有地关注. 复合多糖,具有多方面的生物活性,是当今世界上优质且无任何毒副作用的最佳天然免疫调节剂,能有效.全面地提升人体免疫力,是人体细胞或 ...

  • 新函数Lamda,那么大!什么大?用处大!

    函数公式.职场模板.财务应用.分析图表.练习题.软件工具.表格合并.Office 365.Power Query.表格美化.符号作用.条件格式.学会骗.一本不正经.避坑指南.数据整理.筛选技巧.偷懒宝 ...