EXCEL随机函数实例
excel中如何随机选择不重复的数:
excel中带有一个随机函数rand(),但rand()只选取0~1之间的随机数,而且两个数不保证不重复。因此就用到了函数rank。 1、假设要在1~100中随机抽取5个不重复的数。 2、在A1~A100中输入=rand()。 ;也就是在A1~A100中随机抽取了100个0~1之间的随机数。 3、在C1中输入=RANK(A1,A:A);C2中输入=RANK(A2,A:A);C3中输入=RANK(A3,A:A)……以此类推。 ;目标单元格C1~C5。 ;其实,C1~C5中显示的是A1~A5在100个随机数中的排序。 4、已成功抽取1~100中的5个随机数。按ctrl+r刷新。 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可以生成一个新序列。 随机产生六位数字密码=INT(RAND()*(899999-10001))+100001 EXCEL生成前2位是大写字母,中间4位是小写字母,后两位是数字 |
EXCEL随机函数实例相关推荐
- python把数据写入excel_Python读写sqlite3数据库的方法并且将数据写入Excel的实例详解...
这篇文章主要介绍了Python实现读写sqlite3数据库并将统计数据写入Excel的方法,涉及Python针对sqlite3数据库的读取及Excel文件相关操作技巧,需要的朋友可以参考下 本文实例讲 ...
- ThinkPHP 6.0 phpspreadsheet操作Excel表格实例
在 ThinkPHP 6.0 中实现 excel 导出功能,需要使用第三方扩展phpspreadsheet. 安装和导入导出就不再讲解了,可以看这两篇: <ThinkPHP6 excel 导入功 ...
- 二维码生成器 python excel_python生成excel的实例代码
本文实例为大家分享了python生成excel的具体代码,供大家参考,具体内容如下 #_*_coding:utf-8_*_ import MySQLdb import xlwt from dateti ...
- PHP读取MySQL数据生成Excel文件实例
以下这个实例可以将MySQL数据库的数据通过PHP程序导出到Excel里面,是一个同事问我的,我也就抽空做了一个例子.例子比较简单,要做复杂的话思路都是一样的,希望对大家有所帮助. 第一步 建立MyS ...
- python处理excel表格实例-python2 对excel表格操作完整示例
本文实例讲述了python2 对excel表格操作.分享给大家供大家参考,具体如下: #!/usr/bin/env python2 # -*- coding: utf-8 -*- "&quo ...
- python处理excel教程实例-python 读写excel文件操作示例【附源码下载】
本文实例讲述了python 读写excel文件操作.分享给大家供大家参考,具体如下: 对excel文件的操作,python有第三方的工具包支持,xlutils,在这个工具包中包含了xlrd,xlwt等 ...
- python处理excel表格实例-使用Python操作excel文件的实例代码
使用的类库 pip install openpyxl 操作实现 •工作簿操作 # coding: utf-8 from openpyxl import Workbook # 创建一个excel工作簿 ...
- python处理excel表格实例-python读写Excel表格的实例代码
本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 安装两个库:pip install xlrd.pip install xlwt 1.python读excel--xl ...
- VBA语言入门:一些简单语法在Excel应用实例
首先,想看详细教程请转向:Excel VBA编程教程 接下来我想介绍一下VBA快速入门最基本的语法. 处理的主函数: Sub fun() ... End Sub 这个语法在c++中可以类比为main, ...
最新文章
- 扩散模型就是自动编码器!DeepMind研究学者提出新观点并论证
- 前端工程化系列[02]-Grunt构建工具的基本使用
- 新工具一键安装Java环境!微软又双叒叕造福开发者
- C#调试中,在VS的输出窗口或即时窗口显示消息
- 2.17 Jupyter/ipython 笔记本的快速指南-深度学习-Stanford吴恩达教授
- MySQL LEFT/RIGHT JOIN:外连接查询
- Trie树:应用于统计和排序
- 《Effective C#》Item 7:推荐使用不可改变的原子值类型
- c语言注释符的作用有哪两种,C语言编程的注释符号是?
- VS找不到System.Web.Extensions.dll的解决办法
- 转载:动态调用WebService(C#)
- Lightning 转 USB Type-A/Type-C 思路
- 基于51单片机三路温湿度语音LCD1602液晶显示报警
- 04 高等数学专题——向量代数和空间解析几何
- 记录“麻辣香锅”病毒处理过程
- python报错:Empty suite
- ubuntu 下启用ipv6
- 人工智能到底是什么?AI基础概念深度解析
- java calendar星期_java 日历 Calendar 获取当前时间是星期几
- HDU 4416 Good Article Good sentence(12年杭州 后缀数组)
热门文章
- 关于“放假”、“休息” “调休” 的各种说法!
- 浅谈城市综合管廊分类及其运维管理
- 风控建模三:变量筛选原则
- 国服Cytus2解密与注入
- 原生JS封装分页器组件
- 某软件平台定制开发项目技术标书
- 抖音世界杯直播时出现男女“不雅”声音?官方回应了!
- matlab汽车座椅脉冲振动冲击仿真
- 【图神经网络】图神经网络(GNN)学习笔记:GNN的应用简介
- “超融合对战法”,带你杀出一条血路