随机号码生成软件(免费手机号码和验证码)

生活常识 2023-04-30 10:08生活常识www.baidianfengw.cn

  我们在做教程时,经常用到大量个人基本信息,如果用实名和正确信息,会造成侵犯个人信息权。

  为此,笔者经过筛选,用随机函数RAND随机生成姓名、学历、性别、身份证、手机号等信息,避免了侵权的问题。

  一、随机生成姓名

  中国人的姓名多由2~3位构成(复姓可能为4位),首先,我们要把从网上抄来的2~3位姓名拆分为单字。如下图:

  图1

  姓:在F2单元格输入函数:=LEFT(E2,1),表示截取姓名中的第一个字。

  名1:在G2单元格输入函数:

  =IF(LEN(E2)=2,RIGHT(E2,1),MID(E2,2,1))

  以上函数用IF函数进行判断,先用LEN()判断计算姓名字数,如果是两个字,则用RIGHT(E2,1)显示最右边的名;如果是3个字,用MID(E2,2,1)从姓名单元格第二位取名当中的第一个字。

  名2:在H2单元格输入函数:

  =IF(LEN(E2)=2,””,MID(E2,3,1))

  以上函数用IF函数进行判断,先用LEN()判断计算姓名字数,如果是两个字,则用””表示空;如果是3个字,用MID(E2,3,1)从姓名单元格第三位取姓名当中的第三个字,也可用RIGHT(E2,1)取最右边的一个字。

  用三列辅助列随机取数,分别对应姓氏和两个名,函数很简单,分别在三个单元格输入:=RAND(),然后复制公式到所需行。

  图2

  随机数和姓名处理清楚后,需要随机生成姓名并合并,操作方法如下图:

  图3

  在K3单元格输入函数:

  =IFERROR(INDEX(F$2:F$471,RANK(A2,A:A)),””)

  此处用INDEX+RANK函数组合,先用RANK(A2,A:A)计算A2的数值在A列中的排名,然后用INDEX(F$2:F$471,把F$2:F$471中该排名数字所在的行结果进行调用,即可得到随机姓。

  IFERROR函数表示查找的内容为错误值时进行屏蔽。

  两个随机名的操作方法是一样的,只需要计算B列和C列中随机数的排名行即可。

  L列函数:

  =IFERROR(INDEX(G$2:G$471,RANK(B2,B:B)),””)

  M列函数:

  =IFERROR(INDEX(H$2:H$471,RANK(C2,C:C)),””)

  在N2单元格输入函数:=K2&L2&M2,把随机生成的姓和名连接起来,由此得到随机生成的姓名组合。

  对照图3看就一目了然,每按一次F9就随机生成一次。

  二、随机生成学历和性别

  图4

  如上图,在需要生成学历的第一个单元格输入函数:

  =VLOOKUP(INT(RAND()*8)+1,{1,”博士”;2,”硕士”;3,”本科”;4,”大专”;5,”高中或中专”;6,”初中”;7,”小学”;8,”文盲或半文盲”},2,)

  公式解析:

  (RAND()*8)+1表示随机生成1~8之间的数字,用INT取整数,取{1,”博士”;2,”硕士”;3,”本科”…}中数字对应的值。2表示如果随机数取整后不在1~8范围,则取第二个,也就是VLOOKUP函数中的第二列。

  随机生成性别的方法同上,函数为:

  =VLOOKUP(INT(RAND()*2)+1,{1,”男”;2,”女”},2,)

  当然还有其他方法可以随机生成。如:

  =CHOOSE(RANDBETWEEN(1,2),”男”,”女”)

  三、随机生成身份证号码

  图5

  这里的出生日期和区域代码要手动输入,可以在网上搜索,区域代码我前几天讲过,这里为了演示,图中数据是随意复制的数据。

  在需要生成身份证的单元格输入函数:

  =U2&TEXT(T2,”yyyymmdd”)&TEXT(RAND()*10^3,”0000″)

  TEXT(T2,”yyyymmdd”)表示将日期转换为如19920215.

  TEXT(RAND()*10^3,”0000″)表示取RAND()*10^3随机生成的4位数。

  四、随机生成手机号

  图6

  我们先随机生成网段如131 133 135等,再随机生成8位数,然后把网段和随机的8位数连接起来就得到随机手机号码。

  网段生成函数:

  =CHOOSE(RANDBETWEEN(1,14),131,135,136,137,138,139,151,152,153,157,159,180,181,183)

  RANDBETWEEN(1,14)表示随机生成1~14中的随意数,再用CHOOSE嵌套,当函数RANDBETWEEN(1,14)出现1的时候,函数就变为:CHOOSE(131,135,136……),最终结果就是131。

  网段生成8位数:

  =RANDBETWEEN(10000000,99999999)

  表示随机生成10000000到99999999

  怎么样,是不是很简单,再也不要担心侵权了!

Copyright@2015-2025 白癜风网版板所有