本文目录一览:

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键进行数据更新。