当前位置:首页 >> 建筑/土木 >>

Excel rand


Excel rand()随机函数的应用 随机函数的应用
2010-08-03 09:31:20| 分类: 电脑日常应用 | 标签:rand 随机数 int 公式 函数 |字号大中小 订阅

求教:我的电子表格中 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(I NT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(I NT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHA R(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),I F(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*25+65)),CHA R(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(INT(RAND()*2)=0,CHAR(I NT(RAND()*25+65)),CHAR(INT(RAND()*25+97)))),IF(INT(RAND()*2)=0,CHAR(INT(RAND()*9+48)),IF(I NT(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 AB 公式 说明(结果) =RAND() 介于 0 到 1 之间的一个随机数(变量) =RAND()*100 大于等于 0 但小于 100 的一个随机数(变量) 如果只要显示重复的数据,可以使用条件格式来显示: 选定 AB 列,点"格式"->"条件格式",将条件 1 设为: 公式=COUNTIF($A:$B,A1)>1 点"格式"->"字体"->"颜色",选中红色,点两次"确定". 用条件格式 选中 A 列,格式-条件格式,条件选择公式,并输入公式:=COUNTIF(A:A,A1)>1,格式按钮,设置字体 颜色或背景(图案)颜色。

=================================

生成 定量个数字 最小值 --- 最大值 间的 不重复随机数 ' '生成不重复随机数的代码: ’欢乐小爪(QQ:461699029) '方法一 Sub 指定数据段不重复随机数() Dim s% Dim xm() As String, arr() As String '声明变量 Dim 随机数个数%, 最小值%, 最大值%, 随机数值% 随机数个数 = Range("c1") 最小值 = Range("c2") 最大值 = Range("c3") If 随机数个数 < 1 Or 最小值 > 最大值 Then Exit Sub If 随机数个数 > (最大值 - 最小值 + 1) Then Exit Sub On Error Resume Next Columns("A:A").ClearContents ReDim arr(1 To 最大值 - 最小值 + 1) For s = 1 To 最大值 - 最小值 + 1 arr(s) = 最小值 + s - 1 Next ReDim xm(1 To 随机数个数) For s = 1 To 随机数个数 随机数值 = Int(Rnd() * (最大值 - s - 最小值) + 最小值) '-----a 语句 xm(s) = arr(随机数值 - (最小值 - 1)) '-----下面一句对 arr 数组重新排序,本句为赋值

arr(随机数值 - (最小值 - 1)) = arr(最大值 - s) Next Sheets(1).Range("a1").Resize(随机数个数) = WorksheetFunction.Transpose(xm) End Sub ======================================== 小妖提供一下代码(),仅以感谢 Sub 产生不重复随机整数() Dim mr As Range For Each mr In Range("a1:a10") Do '---这样赋值单元格的 A

'---do…loop until 语句,指循环至 loop until 后的条件实现即终止

mr = Int(Rnd() * 10 + 1)

'----这样赋值单元格的

Loop Until Application.CountIf(Range("a1:a10"), mr) = 1 Next mr End Sub -*-*-*-*-*-*-**********-*-*-*-*-*-*-------------------------Sub aa() Range("a1:a65") = "" Dim num As Long, arr(1 To 65) As Long, arr2(1 To 65, 0) As Long, x As Long t1 = Timer For x = 1 To 65 arr(x) = x Next x For x = 1 To 65 num = Int(Rnd() * (65 - x) + 1) arr2(x, 0) = arr(num) '-----a 语句

'-----下面一句对 arr 数组重新排序,本句为赋值 arr(num) = arr(65 - x + 1) Next x Range("a1").Resize(65) = arr2

MsgBox "运行时间" & Format(Timer - t1, "0.000") & "秒" End Sub ====================== 在 0、5、10 中间随机生成一个数

=IF(RAND()>0.3,IF(RAND()>0.6,10,5),0)


相关文章:
利用EXCEL表格进行随机抽样_图文
利用EXCEL表格进行随机抽样_销售/营销_经管营销_专业资料。利用RAND函数,RANDBETWEEN函数,宏,随机数发生器,等距抽样法等进行随机抽样!...
excel 中如何在随机数中得到
excel 中如何在随机数中得到 -5~+10 之间的随即数字前面必须带有正负号. -5~0 显示负数, 0~10 显示正数有加减 满意回答 =rand()*15-5 如果需要整数,=...
EXCEL随机数填充
EXCEL 随机数填充序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 范围 ±3 ±5 ±10 ±20 ±30 公式 =int(rand()*(-6))+3 =int(rand()*(-...
EXCEL在所选单元格中随机生成不重复整数的方法
EXCEL 在所选单元格中随机生成不重复整数的方法时光(QQ:31625649) (2013-11-19) 功能:为所选单位元格随机分布不重复的由 1 起始的整数 Private Sub LzhRandto...
EXCEL随机数据生成方法
Excel 随机函数 rand()生成随机数和随机字母以前使用 Excel 的随机数函数, 生成过固定位数的数字卡的卡号和密码,效果还 是蛮好的!现在又有新的需求了,那就...
在EXCEL中生成随机数
Excel 随机函数 rand()生成随机数和随机字母以前使用 Excel 的随机数函数, 生成过固定位数的数字卡的卡号和密码,效果还 是蛮好的!现在又有新的需求了,那就...
excel 怎样实现自动生成随机数据
excel 怎样实现自动生成随机数据_计算机软件及应用_IT/计算机_专业资料。看你想要什么样的数据,有个 RAND()函数可以随机生成数据。 RAND 返回大于等于 0 及小于 1...
如何在Excel中生成某个范围内的随机整数
如何在 Excel 中生成某个范围内的随机整数 来源:excel 格子社区 有时需要生成某个范围内随机整数,在 Excel 中可以 使用 RANDRANDBETWEEN 函数。 1.使用 ...
Excel-Rand()随机数函数免费学习_excel_教学视频大全
随机数生成函数的运用视频教程,微电子小课堂全套教学,在线学习excel课程,Excel-Rand()随机数函数视频下载
Excel随机函数和规划求解
Excel随机函数和规划求解_数学_自然科学_专业资料。介绍Excel中随机函数RandBetwween或Rand的用法,重点讲解Excel中的规划求解,在求解九宫格和数学中线性规范时有很大...
更多相关标签: