怎么在excel里面生成随机数?

www.zhiqu.org     时间: 2024-05-31

方法一:公式法

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中如何产生随机数
(17026262060): 在B3单元格输入:=rand()*1000+800,再将B3单元格下列至B35,即可产生介于800至1800的一组任意随机数,因为rand()随机函数可以产生七位数据的随机值,如果需要一位或两位小数,选中B3至B35,右键->设置单元格格式->分类选数值,小数位数选择1或2,确定即可解决.

#池健性# 怎样在办公软件excel中设置随机数?且随机数在区间内? -
(17026262060): 在办公软件excel中设置随机数且随机数在区间内方法如下:1、需要在图中的表格区域内每个单元格自动生成一个随机数,随机数范围5.10-9.90.2、选中区域内的第一个单元格,在编辑栏内输入公式:=RANDBETWEEN(510,990)/100,回车即可.如图所示.3、此时第一个随机数值产生,如图.4、拖动鼠标对需要自动生成随机数的单元格进行填充,如图所示.

#池健性# excel 随机数生成 -
(17026262060): 假设数据在A列,2013年不变,月份和日期随机递增: 1、在A1手工输入日期:2013-1-1,这个日期是第一日期,可以根据需要自定; 2、在A2中输入公式: =TEXT(RANDBETWEEN(A$1,41639),"e-mm-dd") 下拉. 得到要求的随机日期列,下面的日期有可能是这年的最后一天,并重复. 补充问题(日期格式): 修改一下公式: 假设数据在A列,2013年不变,随机生成A1到2013-12-31间的日期: 1、在A1手工输入日期:2013-1-1,这个日期是第一日期,可以根据需要自定; 2、在A2中输入公式: =TEXT(RANDBETWEEN(A$1,41639),"yyyymmdd") 下拉.

#池健性# excel如何产生随机数excel如何产生(632.56~756
(17026262060): 在单元格中输入公式: =RAND()*123.77+632.56 就可以了,RAND()可以生成0~1之间的随机数.

#池健性# 如何在EXCEL中随机生成数据?
(17026262060): 容易. 第A1单元格中输入较小数,在A2单元格中输入较大数 然后在A3单元格中输入公式“=RAND()*$A$1+$A$2-$A$1”然后拖动填充柄,填充至A26单元格中即可

#池健性# 如何在excel中生成随机函数,比如要生成区间( - 200,+200)之间的随机数要求1、个位数是0(最小精度是10); 2、显示出来正数带有“+”符号,负数带有... - 作业帮
(17026262060):[答案] =TEXT(INT(RAND()*401-200),"+0;-0") 其中INT(RAND()*401-200)是用来取-200到200的,rand取的是0-1之间值,但永远达不到0和1 0*401-200=-200 1*401-200=200 产生的最小和最大值即为无限接近-200和200,但永远达不到,配合int函数,不...

#池健性# 怎么批量产生在excel中随机数
(17026262060): 这个很easy的!直接在单元格中输入=randbetween(bottom,top)就可以随机产生在bottom和top之间的1个随机数,然后就点那个单元格下拉就可以了 想获得几个随机数就拉到第几行就行啦!

#池健性# excel中如何产生随机数 -
(17026262060): 1、首先介绍一下如何用RAND()函数来生成随机数(同时返回多个值时是不重复的).如下图所示,在单元格中输入=RAND(),回车后单元格即返回了一个随机数字.2、RAND()函数返回的随机数字的范围是大于0小于1.因此,也可...

#池健性# 如何在excel中生成随机数 -
(17026262060): =randbetween(1,20),1到20的随机数,1,20可以自己修改

#池健性# Excel中怎么生成随机数? -
(17026262060): 1,首先,打开Excel表格程序,进入程序主界面中,选中一个单元格.2,接着,在选中的单元格中输入以下的公式,回车确定.3,即可看到Excel中自动生成随机数.4,最后,继续操作,即可看到另...