——EXCEL2016系列教程之“随机函数”应用
昨天,粉丝问我,为什么你讲电话号码和身份证号码信息隐藏的内容时列举了的这些号码的信息是怎么得来的?这个问题,我在讲解视频的时候已经谈到了,这些号码是随机生成的主要用于教学需要,不涉及个人隐私。根据《网络安全法》规定,电话号码和身份证号码等属于公民个人的隐私,不得随意公开泄露。
今天,飞云老师就将我怎样生成的这些号码的过程,给大家分享一下,也许,你在以后的工作中也能用到这些知识。需要用到两个函数和一个运算符。
一、2个函数
在Excel中有两个随机函数RAND函数和RANDBETWEEN函数。这两个函数,能为我们随机录入批量数据提供了很大方便。
1. 函数RAND()
功能:随机生成一个大于等于 0 且小于1的实数。
格式:=RAND()
演示:
说明:按F4,每刷新一次,就重新生成一次!
2. 函数RANDBETWEEN
函数RAND只能随机生成0~1之间的数,如果要生成其它数字,怎么办?
EXCEL还提供了一个函数RANDBETWEEN,它不需要其它函数配合,它自己本身就可以实现生成指定范围内的整数。
功能:随机生成位于两个指定数之间的一个整数。
格式:= RANDBETWEEN(bottom, top)
解析:bottom——最小整数;top——最大整数;函数中的逗号是英文状态下输入的逗号。
演示:
1. 生成1-10的随机数
输入:=RANDBETWEEN(1,10)
演示:
2. 生成11位的随机数(模拟电话号码)
输入: =RANDBETWEEN(13881000000,13981000000)
演示:
3. 随机生成字母
说明:(1)要生成a~z的随字母,必须要知晓a~z的十进制ASSIC为97~122; A~Z的十进制ASSIC为65~90;
(2)函数:CHAR(number),将其他类型计算机文件中的代码转换为字符。例如=CHAR(97),结果为:a。
示例1:随机生成小写字母
输入: = CHAR(RANDBETWEEN(97,122))
演示:
示例2:随机生成大写字母
输入: = CHAR(RANDBETWEEN(65,90))
演示:
二、1个运算符
问题出现了:如果随机生成18位的数字, =RANDBETWEEN(111111111111111111,222222222222222222),返回的结果是这样的2.0006E+17,在EXCEL中不能直接输入超过11位的数字,具体解决办法,请参考之前上传的视频教程《2招解决,Excel中大于11位数字输入的烦恼,妙哉!》。
一)身份证号码知识
身份证号码是由18位数字组成的,分别表示什么意思,如图。
二)如何生成随机18位数字(模拟身份证号)
为了完成生成随机18位数字,我们需要以下步骤:
1.分段生成随机数字
(1)随机生成前6位数字
输入: =RANDBETWEEN(510100, 510129)
演示:
(2)随机生成“年份”4位数字
输入: =RANDBETWEEN(1970, 2000)
演示:
(3)随机生成“月份”2位数字
问题:月份1至9月,只有1位数,身份证号要用2位数表示,这是我们就需要用到函数TEXT。
- 介绍函数TXTE
功能:数值转化为自己想要的文本格式。
格式:=TEXT (value,format_text)
解析:Value——为数字值;Format_text——为所要的文本格式。
举例:=TEXT(1,"00") 结果:01
- 随机生成“月份”2位数字
输入: =TEXT(RANDBETWEEN(1, 12), "00")
演示:
(4)随机生成“日”2位数字
输入: =TEXT(RANDBETWEEN(1, 30), "00")
演示:
(5)随机生成“后四位”4位数字
输入: =TEXT(RANDBETWEEN(1111, 9999), "00")
演示:
2.合成18位数字
(1)介绍“&” 文本连接运算符
功能:将两个值连接(或串联)起来产生一个连续的文本值
举例:="伟大"&"祖国" 结果:伟大祖国
演示:
(2)合成18位数字
输入: =C4&D4&E4&F4&G4
演示:
特别说明:本次课来主要是为了介绍随机函数的应用,尤其是结合我们的实际工作,灵活运用随机函数。因此,没有考虑,在模拟生成18位身份证号码的数字时候,2月有28日和29日;也没有考虑其它月份大的时候有31日,这些问题。
关于这个问题在Excel中是可以用函数来规避,实现的,但不是本节课的主要内容!
各位小伙伴,今天的知识就是这些。你会了吗?自己去探索吧!如果你有任何问题,关注我评论留言,飞云老师,会在第一时间回复你。
思维决定命运,方法决定效率!
更多EXCEL操作技巧,将陆续更新,请关注!!