如何在EXCEL中生成随机数_第1页
如何在EXCEL中生成随机数_第2页
如何在EXCEL中生成随机数_第3页
如何在EXCEL中生成随机数_第4页
如何在EXCEL中生成随机数_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

求教:我的电子表格中 rand()函数的取值范围是-1 到 1,如何改回 1 到 0回答:有两种修改办法: 是1rand()/2, 或1rand()/2。 效果是一样的,都可生成 0 到 1 之间的随机数电子表格中 RAND()函数的取值范围是 0 到 1,公式如下: =RAND() 如果取值范围是 1 到 2,公式如下: =RAND()*(2-1)+1RAND( )注解:若要生成 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.12,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)+10003、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(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)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,格式按钮,设置字体颜色或背景(图案)颜色。 我看了你的表,明白你的意思是要生成 110 之间的整数随机数。但你说要根据已经有的一列数,这我就不明白了。因为无规律的随机数不应该和已给的随机数有关。否则又怎么能称得上真正的随机数呢。 =RAND() 此函数是生成 01 之间的随机小数。 若要生成 a 与 b 之间的随机实数,应使用: =RAND()*(b-a)+a 所以若生成 1 与 10 之间的随机实数,应使用: =RAND()*9+1 再来看下一个函数,求整函数 =int(a)表示的是求不大于 a 的最大整数,比如 int(6.78)=6; int(9

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论