如何在EXCEL制作一组不重复的随机数

如何在EXCEL制作一组不重复的随机数,第1张

一、工具

笔记本电脑,office excel软件

二、方法(以要求1-50个数字随机不重复分布在50个单元格中为例)

1、在A1单元格输入“=IF(ROW()=1,INT(RAND()50+1),LARGE(IF(COUNTIF(INDIRECT("A1:A"&ROW()-1),ROW($1:$50)),,ROW($1:$50)),INT((51-ROW())RAND()+1)))”,不要直接回车或点前边的勾确认,而是要同时敲击CTRL+SHIFT+ENTER三键结束。

2、鼠标移到A1单元格右下角,光标变为黑十字,向下拖拽到A50即可。

1、选择L1:U20单元格,输入=RAND()   按Ctrl+Enter组合键结束,生成随机数

2、选择W1:AF10单元格,输入以下公式,按Ctrl+Enter组合键结束,生成100个不重复的数据

=LARGE($A$1:$J$20,SUMPRODUCT(($L$1:$U$20>L1)1)+1)

我们生成多个随机的不重复数,可以实现通过随机生成的数字做分组用。

生成简单的随机数很简单,但是要生成不重复的随机数相对而言会比较麻烦。

这里从易到难介绍几种解决问题的方法。

*** 作方法

01

我们这里假定要

在B列生成20个随机且不重复的数据,然后根据随机计算的结果给A列的姓名进行排序及分组。

02

如果我们

单纯地以RANDBETWEEN函数来做(下图1),生成的数据会有重复数。

03

作者给出的对策如下:

1)在C列建立辅助列,然后输入:=RAND()

RAND函数的作用是

生成0到1之间的随机数字,因为是很多位数的小数,所以基本不会出现重复值(或者说概率低到可以忽略不计)。

辅助列相关知识请参考下方经验:

04

如果仍然担心会出现重复值,我们可以

再使用一个RAND函数与之相乘,进一步降低出现重复值的概率。

05

2)在B列使用RANK函数对C列的数据进行排序。

由于C列的数值没有重复,所以RANK函数排序后的结果也不会发生重复。

06

上面的办法是比较简单的办法,我们也可以参考下图函数公式 *** 作,但相对比较麻烦,有兴趣可以研究研究。

07

3)RAND函数和RANDBETWEEN函数都可以

通过按F9键进行数据更新。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/12178839.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存