本文目录一览:
excel不重复随机函数
没有不重复的随机函数,
rand() randbetween()
这两个随机函数,要想不重复随机函数可以先选定数据范围,在数据菜单里设置,
数据,数据有效性,设置,自定义,然后填一个不能重复的函数,
这两个结合起来,就可以生成不重复的随机数了,
excel如何随机生成不重复整数?
1、首先在excel表格中输入随机函数公式:=rand()。
2、点击回车并下拉公式即可得到一组随机函数,先将该组随机函数复制粘贴为数值,将其固定显示在单元格中。
3、然后再其右侧的空白单元格中输入公式:=RANK($B$3:$B$12,$B$3:$B$12)。
4、点击回车并下拉公式即可得到一组不重复的随机整数。
EXCEL随机生成不重复的数字?
1、首先,我们在数据表中添加一个辅助列,公式为=rand()
rand函数也是一个随机数函数,生成的是0-1之间的随机小数,因为是小数,而且位数至少有七位,所以重复的可能性非常小。
2、接下来用rank函数获取每个随机数在B列中的排名,这样就可以得到不重复的整数
函数语法:=rank(数字,一组数据)=排名
因此,我们将抽奖公式改为:=INDEX($A$2:$A$26,RANK(B2,$B$2:$B$26))
这样,中奖名单就没有重复的了~
话说,今年你们开了年会了吗?有没有中奖哦~分享出来让我也沾点运气吧~
用EXCEL随机抽取并且不重复。
方法一:公式法
1、我们以生成1-10范围内的随机数字为例,讲述方法。
首先,在A2单元格中输入公式:=SMALL(IF(COUNTIF($A$1:A1,ROW($1:$11))=0,ROW($1:$11)),INT(RAND()*(11-ROW(A1))+1))
然后按下Ctrl+Shift+Enter三键结束数组公式。
2、然后,下拉填充公式到A12单元格,也就是填充11个单元格,为什么要填充11个呢,我们明明只要10个数字?这是因为,最后一个数字是不会变化的,所以呢,要生成10个随机数,需要填充11个单元格,同样的生成11个随机数的话,要填充12个单元格,除此之外,公式中的11还要改成12。
3、生成随机数后,每按下一次F9(或者其他单元格进行一次计算),随机数就会刷新一次,重新生成一组随机数,要注意喽!
4、好了,一组不重复的随机数字生成了,现在我们回头看看这个公式是怎么实现的吧。首先看Small函数的第一个参数,也就是数字区域,这里是利用if和Countif函数来实现此单元格上面的单元格区域,是否有当前单元格的数字,如果有,就返回False,而如果没有就返回这个数字,从而生成一组由上面单元格没有的数字和Flase组成的序列,下图是按F9得到的结果:
5、Small函数的第二个参数,也就是从这个序列中取第几个最小值,在得到的数字中,利用随机函数rand和row函数,实现在这有个个数中随机抽取一个数字,从而得到排序中这个数字顺序的一个数字。通过这样一个数组公式,就实现了生成一组不重复的随机数字啦。
方法二:VBA法
1、VBA功能强大,可以利用很多算法实现随机数。这里介绍一种简单的办法。首先在Excel中按下Alt+F11,打开VBE界面,双击要生成随机数的工作表,在右侧空白处需要输入代码。
输入代码如下:
Sub m()
Range("A:A").ClearContents'这里是A列,根据需要修改
For i = 1 To 10'这里是10个数字,根据需要修改
kkk:
Randomize
x = Int(Rnd * 10) + 1
If Application.CountIf(Range("A:A"), x) = 0 Then
Cells(i, 1) = x
Else
GoTo kkk
End If
Next i
End Sub
2、代码原理很简单,就是随机生成数字,如果A列中有了这个数字,就返回再次随机生成,一直到没有这个数字为止;利用循环生成制定数量的数字。
3、按下F5执行代码,就看到在对应的Sheet中的对应列,生成了一组随机的不重复的数字。
excel随机生成范围内数字,不重复
我们生成多个随机的不重复数,可以实现通过随机生成的数字做分组用。
生成简单的随机数很简单,但是要生成不重复的随机数相对而言会比较麻烦。
这里从易到难介绍几种解决问题的方法。
操作方法
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键进行数据更新。