【不懂就问】生成多个不重复随机数

清华学弟任泽岩
清华学弟任泽岩

创作者俱乐部成员

困难如山,我有金山。

欢迎收看本期【不懂就问】专题,我是学弟。

学弟有困难了!欢迎各路大佬来帮忙!

我们知道,可以使用RANDBETWEEN函数生成一个1-100的随机数:

=RANDBETWEEN(1,100)

并且可以使用Ctrl+Enter进行批量生成。

但它们的逻辑是:彼此是独立的,有可能生成两个相同的随机数结果。

请问:如何一次性批量生成若干个不同的随机数,并且彼此不相同呢?

这个操作可以进行抽奖,例如在100个人里抽5个幸运观众。

感觉动态数组函数应该能解决。欢迎大佬们不吝赐教。


>>>欢迎收看【清华学弟任泽岩】WPS社区个人帖子合集(新)<<<

https://bbs.wps.cn/topic/36920

辽宁省
浏览 333
收藏
6
分享
6 +1
14
+1
全部评论 14
 
农家的牛
哈,用WPS来编程啦。唯一不好就是没学易语言,还是用英文单词来作函数。
· 福建省
回复
 
дй※®ε 哦嘞
дй※®ε 哦嘞

创作者俱乐部成员

https://bbs.wps.cn/topic/12953?chan=share&fromshare=copylink
· 江西省
1
回复
清华学弟任泽岩
清华学弟任泽岩

创作者俱乐部成员

已学习,原来大佬早有记载
· 辽宁省
回复
 
墨云轩
墨云轩

创作者俱乐部成员

=RANDBETWEEN(1,100)生成的数据重复几率比较大,可以用rand函数生成100个小数作为辅助列,再对数据进行排名,会得到100个不重复的数
· 河北省
1
回复
清华学弟任泽岩
清华学弟任泽岩

创作者俱乐部成员

收到,一个rand()不行就rand*rand
· 辽宁省
回复
 
董欣煜
我用一个特别基础的方法来解决这个问题,生成1-100的数字,然后辅助列随机数,再根据辅助列来排序,删除辅助列即可。
· 吉林省
1
回复
清华学弟任泽岩
清华学弟任泽岩

创作者俱乐部成员

那可能会比较难封装到一个抽奖文件里,用一次F9来解决摇奖的问题
· 辽宁省
1
回复
 
王俊博
王俊博

创作者俱乐部成员

进来学习
· 中国
1
回复
 
答案
学到了,
· 浙江省
1
回复
 
HC.旋
一个一个地抽奖比较好玩和刺激
· 福建省
1
回复
 
古哥计划
古哥计划

优秀创作者

=TAKE(SORTBY(SEQUENCE(100),RANDARRAY(100)),5),需要其他就改100和5,如30选择3,更改为30和3就可以了
· 广东省
1
回复
清华学弟任泽岩
清华学弟任泽岩

创作者俱乐部成员

感谢古老师
· 辽宁省
回复