EXCEL随机数据生成方法

EXCEL随机数据生成方法
EXCEL随机数据生成方法

求教:我的电子表格中rand()函数的取值范围是-1到1,如何改回1到0

回答:有两种修改办法:

是[1-rand()]/2,

或[1+rand()]/2。

效果是一样的,都可生成0到1之间的随机数

电子表格中RAND()函数的取值范围是0到1,公式如下:

=RAND()

如果取值范围是1到2,公式如下:

=RAND()*(2-1)+1

RAND( )

注解:

若要生成a 与b 之间的随机实数:

=RAND()*(b-a)+a

如果要使用函数RAND 生成一随机数,并且使之不随单元格计算而改变,可以在编辑栏中输入“=RAND()”,保持编辑状态,然后按F9,将公式永久性地改为随机数。

示例

RAND() 介于0 到1 之间的一个随机数(变量)

=RAND()*100 大于等于0 但小于100 的一个随机数(变量)

excel产生60-70随机数公式

=RAND()*10+60

要取整可以用=int(RAND()*10+60)

我想用excel在B1单元个里创建一个50-80的随机数且这个随机数要大于A1单元个里的数值,请教大家如何编写公式!

整数:=ROUND(RAND()*(80-MAX(50,A1+1))+MAX(50,A1+1),0)

无需取整数:=RAND()*(80-MAX(50,A1))+MAX(50,A1)

要求:

1,小数保留0.1

2,1000-1100范围

3,不要出现重复

=LEFT(RAND()*100+1000,6)

至于不许重复

你可以设置数据有效性

在数据-有效性设

=countif(a:a,a1)=1

选中a列设有效性就好了

其他列耶可以

急求excel随机生成数字的公式,取值要在38.90-44.03之间,不允许重复出现,保留两位小数,不允许变藏

=round(RAND()*5+38.9,2)

公式下拉

Excel随机数

Excel具有强大的函数功能,使用Excel函数,可以轻松在Excel表格产生一系列随机数。

1、产生一个小于100的两位数的整数,输入公式=ROUNDUP(RAND()*100,0)。

RAND()这是一个随机函数,它的返回值是一个大于0且小于1的随机小数。ROUNDUP 函数是向上舍入数字,公式的意义就是将小数向上舍入到最接近的整数,再扩大100倍。

2、产生一个四位数N到M的随机数,输入公式=INT(RAND()*(M-N+1))+N。

这个公式中,INT函数是将数值向下取整为最接近的整数;因为四位数的随机数就是指从1000到9999之间的任一随机数,所以M为9999,N为1000。RAND()的值是一个大于0且小于1的随机小数,M-N+1是9000,乘以这个数就是将RAND()的值对其放大,用INT 函数取整后,再加上1000就可以得到这个范围内的随机数。[公式=INT(RAND()*(9999-1000+1))+1000]

3、Excel函数RANDBETWEEN是返回位于两个指定数之间的一个随机数。使用这一个函数来完成上面的问题就更为简单了。要使用这个函数,可能出现函数不可用,并返回错误值#NAME?。

选择"工具"菜单,单击"加载宏",在"可用加载宏"列表中,勾选"分析工具库",再单击"确定"。接下来系统将会安装并加载,可能会弹出提示需要安装源,也就是office安装盘。放入光盘,点击"确定",完成安装。

现在可以在单元格输入公式=RANDBETWEEN(1000,9999)。

最后,你可以将公式复制到所有需要产生随机数的单元格,每一次打开工作表,数据都会自动随机更新。在打开的工作表,也可以执行功能键F9,每按下一次,数据就会自动随机更新了。

用Excel随机函数rand()生成随机数和随机字母

以前使用Excel的随机数函数,生成过固定位数的数字卡的卡号和密码,效果还是蛮好的!现在又有新的需求了,那就是要生成随机字母!为了避免每次有新的需求都要重新写日志,干脆一起写出来吧!

1、生成随机数字

(1)生成随机数比较简单,=rand()即可生成0-1之间的随机数;

(2)如果要是整数,就用=int(rand())*10,表示0至9的整数,以此类推;

(3)如果要生成a与b之间的随机实数,就用=rand()*(b-a)+a,如果是要整数就用=int(rand()*(b-a))+a;稍微扩充一下,就能产生固定位数的整数了。

注意:如果要使用函数rand()生成一随机数,并且使之不随单元格计算而改变,可以在编辑栏中输入“=rand()”,保持编辑状态,然后按F9,将公式永久性地改为随机数。不过,这样只能一个一个的永久性更改,如果数字比较多,也可以全部选择之后,另外选择一个合适的位置粘贴,粘贴的方法是点击右键,选择“选择性粘贴”,然后选择“数值”,即可将之前复制的随机数公式产生的数值(而不是公式)复制下来!

2、产生随机字母

随机小写字母:=CHAR(INT(RAND()*26)+97)

随机大写字母:=CHAR(INT(RAND()*26)+65)

随机大小写混合字母:=CHAR(INT(RAND()*26)+if(INT(RAND()*2)=0,65,97))

3、产生随机的六位数的字母和数字混合

=CONCATENATE(IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()* 2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()* 2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65) ),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)) ,IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))) ,IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(IN T(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(IN T(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(R AND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND ()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))))

4、随机不重复数字序列的生成方法

有些情形下,我们需要生成一个不重复的随机序列。

比如:我们要模拟洗牌,将一副扑克牌去掉大小怪后剩下的52张打乱。

比较笨的方法是在1-52间每生成一个随机数后,检查该随机数是否出现过,如果是第一次出现,就放到序列里,否则重新生成一个随机数作检查。在 excel worksheet里面用这种办法,会造成if多层嵌套,不胜其烦,在VBA里面做简单一些,但是效率太差,越到序列的后端,效率越差。

当然也有比较好的办法,在VBA里面,将a(1)-a(52)分别赋予1-52,然后做52次循环,例如,第s次生成一个1-52间的随机数r,将a(s)与a(r)互换,这样的话,就打乱了原有序列,得到一个不重复的随机序列。

VBA里这个算法是很容易实现的,但是,出于通用性和安全考虑,有的时候我们并不希望用VBA,我们来看看在worksheet里面如何利用内置函数实现这个功能。

(1)在A1-A52间填入"=INT(RAND()*52)+1",产生1-52间的随机数,注意这里是有重复的

(2)在B1-B52间填入1-52

(3)在C54-BB54填入1-52

(4)在C1填入

"=IF(ROW()=C$54,INDEX(B$1:B$52,INDEX($A$1:$A$52,C$54)),IF(ROW()=INDEX ($A$1:$A$52,C$54),INDEX(B$1:B$52,C$54),B1))"。

分项解释:

a:ROW()=C$54,如果当前行等于当前交换所排的序号

b:INDEX(B$1:B$52,INDEX($A$1:$A$52,C$54)),返回在B1到B52中选择A1:A52中的第C54个值

c:IF(ROW()=INDEX($A$1:$A$52,C$54),否则的话,如果当前行等于A1:A52中第C54个值,则:

d:INDEX(B$1:B$52,C$54),返回B1:B52中的第C54个值

e:若以上条件都不满足,则返回B1

(5)将C1复制到C1:BA52这个区域里面

(6)在BA1:BA52中,我们就得到了一个不重复的随机序列,按F9可以生成一个新序列

如何在EXCEL中生成随机数

RAND

返回大于等于 0 及小于 1 的均匀分布随机数,每次计算工作表时都将返回一个新的数值。语法:RAND( )

说明:若要生成 a 与 b 之间的随机实数,请使用:

RAND()*(b-a)+a

如果要生成整数,则输入:=INT(RAND()*(b-a)+a)

如果要使用函数 RAND 生成一随机数,并且使之不随单元格计算而改变,可以在编辑栏中输入“=RAND()”,

保持编辑状态,然后按 F9,将公式永久性地改为随机数。

如果您将示例复制到空白工作表中,可能会更易于理解该示例。

操作方法

创建空白工作簿或工作表。

请在“帮助”主题中选取示例。不要选取行或列标题。

从帮助中选取示例。

按 Ctrl+C。

在工作表中,选中单元格 A1,再按 Ctrl+V。

若要在查看结果和查看返回结果的公式之间切换,请按 Ctrl+`(重音符),或在“工具”菜单上,指向“公式审核”,再单击“公式审核模式”。

1

2

3

A B

公式说明(结果)

=RAND() 介于 0 到 1 之间的一个随机数(变量)

=RAND()*100 大于等于 0 但小于 100 的一个随机数(变量)

如果只要显示重复的数据,可以使用条件格式来显示:

选定AB列,点"格式"->"条件格式",将条件1设为:

公式=COUNTIF($A:$B,A1)>1

点"格式"->"字体"->"颜色",选中红色,点两次"确定".

用条件格式

选中A列,格式-条件格式,条件选择公式,并输入公式:=COUNTIF(A:A,A1)>1,格式按钮,设置字体颜色或背景(图案)颜色。

下面以Windows XP为例,介绍快速统计多个Word文档页数的技巧。

1.使用资源管理器打开包含要统计页数的多个Word文档的文件夹。

2.单击工具栏中的“查看”按钮,然后单击弹出菜单中的“详细信息”命令。这样将以“详细信息”视图查看文档。

3.右键单击详细信息视图中的任意列(如名称或大小等),然后单击弹出菜单中的“其他...”命令。此时将会打开“选择详细信息”对话框。

4.在“选择详细信息”对话框中,选中“页数”复选框。

5.单击“确定”按钮,在资源管理器中会看到多出一个“页数”列,并显示出了每个文档的页数。

6.为了方便查看每一章对应的页数,将“页数”列拖放到“名称”列的右侧,这样每一章共有多少页就一目了然了。

EXCEL随机数据生成方法

求教:我的电子表格中rand()函数的取值范围是-1到1,如何改回1到0 回答:有两种修改办法: 是[1-rand()]/2, 或[1+rand()]/2。 效果是一样的,都可生成0到1之间的随机数 电子表格中RAND()函数的取值范围是0到1,公式如下: =RAND() 如果取值范围是1到2,公式如下: =RAND()*(2-1)+1 RAND( ) 注解: 若要生成a 与b 之间的随机实数: =RAND()*(b-a)+a 如果要使用函数RAND 生成一随机数,并且使之不随单元格计算而改变,可以在编辑栏中输入“=RAND()”,保持编辑状态,然后按F9,将公式永久性地改为随机数。 示例 RAND() 介于0 到1 之间的一个随机数(变量) =RAND()*100 大于等于0 但小于100 的一个随机数(变量) excel产生60-70随机数公式 =RAND()*10+60 要取整可以用=int(RAND()*10+60) 我想用excel在B1单元个里创建一个50-80的随机数且这个随机数要大于A1单元个里的数值,请教大家如何编写公式! 整数:=ROUND(RAND()*(80-MAX(50,A1+1))+MAX(50,A1+1),0) 无需取整数:=RAND()*(80-MAX(50,A1))+MAX(50,A1)

要求: 1,小数保留0.1 2,1000-1100范围 3,不要出现重复 =LEFT(RAND()*100+1000,6) 至于不许重复 你可以设置数据有效性 在数据-有效性设 =countif(a:a,a1)=1 选中a列设有效性就好了 其他列耶可以 急求excel随机生成数字的公式,取值要在38.90-44.03之间,不允许重复出现,保留两位小数,不允许变藏 =round(RAND()*5+38.9,2) 公式下拉 Excel随机数 Excel具有强大的函数功能,使用Excel函数,可以轻松在Excel表格产生一系列随机数。 1、产生一个小于100的两位数的整数,输入公式=ROUNDUP(RAND()*100,0)。 RAND()这是一个随机函数,它的返回值是一个大于0且小于1的随机小数。ROUNDUP 函数是向上舍入数字,公式的意义就是将小数向上舍入到最接近的整数,再扩大100倍。 2、产生一个四位数N到M的随机数,输入公式=INT(RAND()*(M-N+1))+N。 这个公式中,INT函数是将数值向下取整为最接近的整数;因为四位数的随机数就是指从1000到9999之间的任一随机数,所以M为9999,N为1000。RAND()的值是一个大于0且小于1的随机小数,M-N+1是9000,乘以这个数就是将RAND()的值对其放大,用INT 函数取整后,再加上1000就可以得到这个范围内的随机数。[公式=INT(RAND()*(9999-1000+1))+1000] 3、Excel函数RANDBETWEEN是返回位于两个指定数之间的一个随机数。使用这一个函数来完成上面的问题就更为简单了。要使用这个函数,可能出现函数不可用,并返回错误值#NAME?。 选择"工具"菜单,单击"加载宏",在"可用加载宏"列表中,勾选"分析工具库",再单击"确定"。接下来系统将会安装并加载,可能会弹出提示需要安装源,也就是office安装盘。放入光盘,点击"确定",完成安装。 现在可以在单元格输入公式=RANDBETWEEN(1000,9999)。 最后,你可以将公式复制到所有需要产生随机数的单元格,每一次打开工作表,数据都会自动随机更新。在打开的工作表,也可以执行功能键F9,每按下一次,数据就会自动随机更新了。

在excel中产生随机数

用excel产生随机数 统计软件提供的随机数发生器可以使我们对抽样分布进行计算机模拟,对抽样分布有更加直观的理解。Excel的分析工具库中有一个“随机数发生器”模块,可以产生服从大部分常用分布的模拟数据,但没有提供直接产生随机数的函数。在SPSS中产生随机数的函数在“Randomnumbers”类别中,相应的函数都是以Rv 开头的。 1 样本均值抽样分布的随机模拟 假总体的均值为μ,标准差为σ,则统计理论表明,不论总体的分布如何,只要样本容量n足够大,样本均值的分布总会趋向于正态分布,且均值为μ,标 准差为。 例题:假设总体为均匀分布,模拟样本均值的抽样分布。 假设总体的分布为0-1区间上的均匀分布,则总体的均值为0.5,方差等于 1/12,标准差等于0.288675。现在,我们从总体中抽取1000个样本容量为2的样本(有放回抽样),计算每个样本的样本均值,然后观察样本均值的分布状况。 新建一个Excel工作簿,单击“工具”“数据分析”“随机数发生器”,在弹出的对话框中把变量个数设为2,随机数个数为1000,选择0-1区间的均匀分布,结果放在新工作表中(图1)。把输出结果的每一行看作一个容量为2的样本,共有1000个样本。在C列中计算每个样本的均值。接下来我们就可以分析这1000个样本均值的分布状况了。由于SPSS的直方图工具更为方便,我们把相应的数据复制到SPSS中作直方图,结果如图2,抽样分布的均值为0.5097,标准差为 0.20345,理论值等于0.288675/ 2 =0.20412,两者差异不大。 图1 随机数发生器对话框

图2 样本均值的抽样分布,样本容量=2 2 样本比例抽样分布的随机模拟 样本比例实质上就是指标数值只能取0和1时的样本均值。由于在这种情况下总体的分布为0-1分布,因此在重复抽样的条件下样本均值抽样分布的理论分布是二项分布。中心极限定理表明当样本用量足够大(能够保证np≥5,nq≥5)时二项分布可以用正态分布来近似。 [例] 假设有大批零件,不合格率p为0.2。随机模拟从总体中抽取样本容量分别为5,20,50的2000个样本,分析样本比例p? 的抽样分布。 新建一个工作表,在单元格中输入图5-10左上角所示的信息作为总体:总体中取值为1(不合格)的概率为0.2,取值为0(合格)的概率为0.8。 图3 二项分布的随机模拟

Excel的随机数函数

Excel的随机数函数 1、生成随机数字(1)生成随机数比较简单,=rand()即可生成0-1之间的随机数;(2)如果要是整数,就用=int(rand())*10,表示0至9的整数,以此类推;(3)如果要生成a与b 之间的随机实数,就用=rand()*(b-a)+a,如果是要整数就用=int(rand()*(b-a))+a;稍微扩充一下,就能产生固定位数的整数了。注意:如果要使用函数rand()生成一随机数,并且使之不随单元格计算而改变,可以在编辑栏中输入“=rand()”,保持编辑状态,然后按F9,将公式永久性地改为随机数。不过,这样只能一个一个的永久性更改,如果数字比较多,也可以全部选择之后,另外选择一个合适的位置粘贴,粘贴的方法是点击右键,选择“选择性粘贴”,然后选择“数值”,即可将之前复制的随机数公式产生的数值(而不是公式)复制下来! 2、产生随机字母随机小写字母:=CHAR(INT(RAND()*26)+97) 随机大写字母:=CHAR(I NT(RAND()*26)+65) 随机大小写混合字母:=CHAR(INT(RAND()*26)+if(INT(RAND()*2) =0,65,97)) 3、随机不重复数字序列的生成方法 (1)在A1-A52间填入"=INT(RAND()*52)+1",产生1-52间的随机数,注意这里是有重复的 (2)在B1-B52间填入1-52 (3)在C54-BB54填入1-52 (4)在C1填入"=IF(ROW()=C$54,I NDEX(B$1:B$52,INDEX($A$1:$A$52,C$54)),IF(ROW()=INDEX($A$1:$A$52,C$54),INDEX (B$1:B$52,C$54),B1))"。分项解释: a:ROW()=C$54,如果当前行等于当前交换所排的序号 b:INDEX(B$1:B$52,INDEX($A$1:$A$52,C$54)),返回在B1到B52中选择A1:A 52中的第C54个值 c:IF(ROW()=INDEX($A$1:$A$52,C$54),否则的话,如果当前行等于A1:A52中第C54个值,则: d:INDEX(B$1:B$52,C$54),返回B1:B52中的第C54个值 e:若以上条件都不满足,则返回B1 (5)将C1复制到C1:BA52这个区域里面,在BA1: BA52中,我们就得到了一个不重复的随机序列,

excel的生成随机数的函数用法

excel的生成随机数的函数用法 excel的生成随机数的函数用法: 生成随机数函数使用步骤1:首先介绍一下如何用rand()函数来生成随机数(同时返回多个值时是不重复的)。 如下图所示,在单元格中输入=rand(),回车后单元格即返回了一个随机数字。 生成随机数函数使用步骤2:rand()函数返回的随机数字的范围是大于0小于1。因此,也可以用它做基础来生成给定范围内的随机数字。 生成随机数函数使用步骤3:生成制定范围的随机数方法是这样的,假设给定数字范围最小是a,最大是b,公式是:=a+rand()*(b-a)。 生成随机数函数使用步骤4:举例来说,要生成大于60小于100的随机数字,因为(100-60)*rand()返回结果是0到40之间,加上范围的下限60就返回了60到100之间的数字。 生成随机数函数使用步骤5:上面rand()函数返回的0到1之间的随机小数,如果要生成随机整数的话就需要用randbetween()函数了,如下图该函数生成大于等于1小于等于100的随机整数。 生成随机数函数使用步骤6:这个函数的语法是这样的:=randbetween(范围下限整数,范围上限整数),结果返回包含上

下限在内的整数。注意:上限和下限也可以不是整数,并且可以是负数。 生成随机数函数使用步骤7:rand()和randbetween()是生成随机数的基础函数,也可以灵活变通。比如说要生成0.01至1之间包含两位小数的随机数,则可用下图的公式实现: 看了excel的生成随机数的函数用法还看了:1.excel用函数产生随机数的方法 2.怎么利用excel2010的自带的函数生成随机数 3.怎样用excel随机生成数字 4.excel怎么生成随机数 5.excel2010生成随机数的方法 6.excel2007怎么使用randbetween随机数函数 7.随机数函数randbetween在excel中的使用

用EXCEL按比例生成随机数

用EXCEL按比例生成随机数(或叫按机率生成随机数) 这是百度知道一位同学的提问。要求生成范围为1到50的随机整数,并且,1-15的机率为50%,16-36的机率为30%,37-50的机率为20%。同时还要求生成500组,每组8个。 我当时给出一个公式: =if(rand()<0.5,round(rand()*14,0)+1,if(rand()<0.6,round(rand()*20,0)+16,round(r and()*13,0)+37)) 这里说下用round和用int的区别,用int生成16-36的随机数的话应该用 int(rand()*21+16),而用round可用round(rand()*20+16),这后面的+16放括号里面外面都一样,因为取整操作是由小数部分决定的。 还有我第二个if的判断用的是rand()<0.6而不是小于0.3,这是因为第二个if会执行的机率是50%,50%乘以0.6就是30%。 后来楼主同学又出怪招,要求每组无重复数字,每组从小到大排列。 这个只用单纯的公式的话不好办了。 我写了个VBA: Sub madeRnd() Dim i, j, k, a(8), flag, t Sheets("Sheet1").Select For k = 1 To 500 '生成一组随机数字 For i = 1 To 8 flag = 0 Do Randomize t = Rnd() If t < 0.5 Then a(i) = Int(Rnd() * 15 + 1) ElseIf t < 0.8 Then a(i) = Int(Rnd() * 21 + 16) Else a(i) = Int(Rnd() * 14 + 37) End If If i >= 2 Then For j = 1 To i - 1 If a(i) = a(j) Then flag = 1 Exit For Else

为什么excel中norminv(rand()-mean-standard-dev)可以产生符合正态分布的随机数教学文案

均值为1,标准差为0.3的正态分布概率密度函数图 4 4.2 4.4 4.6 4.8 5 5.2 5.4 5. 6 5.86 00.2 0.4 0.6 0.8 1 1.2 1.4 4 4.2 4.4 4.6 4.8 5 5.2 5.4 5. 6 5.8600.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

均值为1,标准差为0.3的正态分布概率分布函数图 首先看norminv 函数作用: norminv(v,mean,standard_dev)的作用是求出在均值为mean ,标准差为standard_dev 的正态分布函数曲线上对应纵轴为v 那个横轴数值。 即norminv 本质是正态概率分布函数的反函数。 然后找一个具体数值进行分析。 对于我们给定的均值为5,标准差为0.3的正态分布有()5.250.7977P X ≤=。 那通过y=norminv(rand(),5,0.3)(即让v=rand(),即让v 通过01均匀分布函数发生器rand ()产生,或者说v 分布符合01均匀分布)产生的随机数是否有()5.250.7977P y ≤=,或者说为什么当我们让v 通过01均匀分布函数发生器rand ()产生,就有()5.250.7977P y ≤=? 分析解释: 我们知道由于v 通过01均匀分布函数发生器rand ()产生,所以P(v ≤k)=k ,所以 ()0.79770.7977 P v ≤=,即v 出现在正态概率分布函数纵轴[0,0.7977]范围内的概率是0.7977.根据norminv 本质是正态概率分布函数的反函数可知,y=norminv(rand(),5,0.3)出现在正态概率分布函数图像横轴(-∞,5.25]范围内的概率也是0.7977,即()5.250.7977 P y ≤=

excel生成随机数

excel生成随机数 2010年05月25日星期二 16:45 EXCEL函数生成随机数和字母2010-04-28 20:00 生成随机数=RAND() 公式说明=RAND() 介于0 到 1 之间的一个随机数(变量) 若要生成a 与 b 之间的随机实数:=RAND()*(b-a)+a 生成生成a 与 b 之间的随机整数: =INT(RAND()*(100-50)+50) 向下取整 =ROUND(RAND()*(100-50)+50,0) 四舍五入0指0位小数 =CEILING(RAND()*(100-50)+50,1) 向上舍入,1最接近1的倍数 =EVEN(RAND()*(100-50)+50,1) 舍入为偶数 =ODD(RAND()*(100-50)+50,1) 舍入为奇数 如果要使用函数RAND 生成一随机数,并且使之不随单元格计算而改变,可以在编辑栏中输入“=RAND()”,保持编辑状态,然后按F9,将公式永久性地改为随机数。 比如给定A1:A5的5个词,在B1中随机产生这给定的5个词中的一个, =index(a1:a5,1+int(5*rand())) INT 取整,rand 为0到1的随机数值,int(5*rand())为0到4的整数, index(a1:a5,1+int(5*rand())) 为引用a1:a5 的随机1到5行。 随机小写字母:=CHAR(INT(RAND()*26)+97) 随机大写字母:=CHAR(INT(RAND()*26)+65) 随机大小写混合字母:=CHAR(INT(RAND()*26)+if(INT(RAND()*2)=0,65,97)) CHAR(number) Number 是用于转换的字符代码,介于1 到255 之间。使用的是当前计算机字符集中的字符。=CHAR(65) 显示字符集中的第65 个字符(A) 其中48~57为0到9十个阿拉伯数字; 65~90为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。 我的答案一定对 =RAND()*-100+50 即为-50到50的随机数,不是取整数 只需把“=INT(RAND()*-100+50)”双引号里面的部分复制到单元格即可,这个为取整数 =RAND()表示0到1之间的随机数 =RAND()*-100则是-100到0之间的随机数, =RAND()*-100+50则是-50到50之间的随机数 取整数为 =INT(RAND()*-100+50) 注意:INT函数为取整,表示小于该数的最小整数 如INT(8.13)=8而INT-8.13)=-9 不过这个不会影响你去随机数

excle中如何生成随机数

=RAND()此函数是生成0~1之间的随机小数。 若要生成 a 与 b 之间的随机实数,应使用: =RAND()*(b-a)+a 所以若生成1 与 10 之间的随机实数,应使用: =RAND()*9+1 A1 输入=rand() 下拉至A1000 B1 输入1, B2 输入2, 下拉至B1000, 即B1000 是1000 点选a1:b1000, 以A列排序 B列便是1-1000的随机数, 且不重复 再来看下一个函数,求整函数 =int(a)表示的是求不大于a的最大整数,比如 int(6.78)=6; int(9)=9; int(-1.5)=-2 int(π)=3 现在把这两个函数结合到一起,就可以完成你的问题了。 选中某一列的第一行的单元格,在其中输入 =int(rand()*9)+1 或者输入: =int(rand()*9+1) 都可以得到1-10之间的一个随机整数。 然后用鼠标拖动该单元右下角的填充柄向下拖动,就可以得到一列符合条件的1-10之间的随机整数了。 用同样的方法你也可以得到一行或多行或多列甚至一个工作表的随机数。 在excel中如何产生不重复随机数? 问题: 如何在Excel b2:b101中,填充1-100范围的不重复随机数?

方法: Sub 不重复随机数() For i = 2 To 101 Range("b" & i) = "" ‘初始化要填充的范围 Next i For i = 2 To 101 Range("b" & i) = Int(Rnd() * 100) + 1 Do While WorksheetFunction.CountIf(Range("b2:b101"), Range("b" & i)) > 1 Range("b" & i) = Int(Rnd() * 100) + 1 Loop Next i End Sub 注: (1)VBA中有随机函数rnd(),功能是:返回一个小于1,同时大于等于0的随机数。若要产生一个范围从lowerbound为m,到upperbound为n的随机数序列,常用算法是:int(rnd()*(n-m+1))+m (2)countif()是Excel工作表中的函数,不可在VBA中直接调用,可以用“worksheetfunction.函数”作为方法来调用工作表函数。 MyValue = Int((6 * Rnd) + 1) ' 生成1 到6 之间的随机数值。 提供两组公式来生成不重复的1~25的随机数值:

相关文档
最新文档