excle中如何生成随机数

发布时间:   来源:文档文库   
字号:

=RAND()此函数是生成01之间的随机小数。
若要生成ab之间的随机实数,应使用:=RAND(*(b-a+a所以若生成110之间的随机实数,应使用:=RAND(*9+1A1输入=rand(下拉至A1000
B1输入1,B2输入2,下拉至B1000,B10001000点选a1:b1000,A列排序
B列便是1-1000的随机数,且不重复

再来看下一个函数,求整函数
=int(a表示的是求不大于a的最大整数,比如int(6.78=6;int(9=9;int(-1.5=-2int(π=3
现在把这两个函数结合到一起,就可以完成你的问题了。选中某一列的第一行的单元格,在其中输入=int(rand(*9+1或者输入:
=int(rand(*9+1
都可以得到1-10之间的一个随机整数。
然后用鼠标拖动该单元右下角的填充柄向下拖动,就可以得到一列符合条件的1-10之间的随机整数了。
用同样的方法你也可以得到一行或多行或多列甚至一个工作表的随机数。
excel中如何产生不重复随机数?问题:
如何在Excelb2:b101中,填充1-100范围的不重复随机数?

方法:
Sub不重复随机数(Fori=2To101
Range("b"&i=""‘初始化要填充的范围Nexti
Fori=2To101
Range("b"&i=Int(Rnd(*100+1
DoWhileWorksheetFunction.CountIf(Range("b2:b101",Range("b"&i>1
Range("b"&i=Int(Rnd(*100+1LoopNextiEndSub注:
1VBA中有随机函数rnd(,功能是:返回一个小于1,同时大于等于0的随机数。若要产生一个范围从lowerboundmupperboundn的随机数序列,常用算法是:int(rnd(*(n-m+1+m
2countif(Excel工作表中的函数,不可在VBA中直接调用,可以用“worksheetfunction.函数”作为方法来调用工作表函数。

MyValue=Int((6*Rnd+1'生成16之间的随机数值。
提供两组公式来生成不重复的1~25的随机数值:

(1A1
=RANK(INDIRECT("G"&((ROW(1:1-1*5+COLUMN(,$G$1:$G$25
复制单元格A1,粘至单元格A1:E5
公式的原理为:
将随机数值来拿排序(RANK函数),生成1~25的数值(基不上名次重复的机率应该是很低的)
INDIRECT("G"&((ROW(1:1-1*5+COLUMN(:将5的单元格对照到单元格G1:G25
(2单元格A1=RANK(OFFSET($G$1,(ROW(1:1-1*5+COLUMN(A:A-1,,,,$G$1:$G$25
本式的原理和(1很接近,只是将INDIRECT函数以OFFSET函数来取代,以取得地址。

使用方法:
1、选择要填充随机数的单元格范围,2、点击按钮
3、输入随机区间的上限值4、输入下限值
5、不重复的随机数就自动填充到你选择的单元格内了注意:
1、如果提示启用宏,则启用哦
2、选择的单元格不要多于随机区间内的整数个数
随机数RAND(语法RAND(
RAND函数详解:返回大于等于0及小于1的均匀分布随机实数,每次计算工作表时都将返回一个新的随机实数。
注解:若要生成ab之间的随机实数,请使用:RAND(*(b-a+a公式“=RAND(*1000”返回一个大于等于0、小于1000的随机数

本文来源:https://www.2haoxitong.net/k/doc/f32b77e9700abb68a982fb3a.html

《excle中如何生成随机数.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式