首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

vlookup彻底不行了,生成1000个随机密码,这才是正确的方法

今天跟大家分享下我们如何使用Excel生成随机密码,这个密码包含字母、数字与符号。这个也是一个粉丝问到的问题,他想使用vlookup来解决,但是发现根本用不了。

他表示公司系统更新,要求所有的用户密码至少包含字母,数字与符号这3类信息,现在需要重置所有人的密码,随机生成密码后再导入到系统中,现在是一个一个的设置,公司近千人,有没有什么快速的方法。方法当然有,操作也非常的简单,下面就让我们来学习下

一、所需函数

在这里我们需要用到3个函数,都是一些比较简单的函数,非常容易理解

1.RAND函数:生成一个大于等于0小于1的小数

语法:=RAND()

这个函数是没有参数的,它生成的是一个15位的小数(与Excel的精度有关)

2. RANDBETWEEN函数:生成一个介于指定数值之间的随机整数

语法:=RANDBETWEEN(区间最小值,区间最大值)

如果我们将公式设置为:=RANDBETWEEN(10,100),函数就会返回10到100之间的一个随机整数

3.CHAR函数:返回给定数值引用的 Unicode 字符

语法:=CHAR(数值)

这个函数可以根据指定的数值来返回汉字,数值,符号等等的数据,比如在这里我们将函数设置为=CHAR(70)就会返回F这个字母

二、生成随机字母与符号

生成随机的数值非常的简单,只需使用RANDBETWEEN函数即可,关键是如何生成随机的字母与符号,这个我们需要借助CHAR函数来实现,CHAR函数的作用是获取数值对应的Unicode 字符,先跟大家简单的介绍下什么是Unicode 字符

1.什么是Unicode 字符

首先我们需要明白计算机只能识别数字,它是不能直接识别汉字、字母符号等数据的。为了解决这个问题就需要对字母字符等进行编码,Unicode就是一种常见编码的方式,俗称万国码。它几乎是将所有的语言都进行了编码,汉语当然也包含其中在excel中我们可以使用UNICHAR函数来获取对应的Unicode数值,也可以使用CHAR函数将指定的数值转换为Unicode 字符

2.如何随机生成字母与符号

想要随机生成字母与符号,就必须要知道字母与符号对应的Unicode 数值,在这里为大家整理好了

数值:65-90对应大写的英文字母

数值:97-122对应小写的英文字母

数值:42-47分别对应:乘号,加号,逗号,减号,点,左斜杠。一般密码也仅仅支持这几个字符

了解了以上的它们对应的Unicode 数值,我们就可以利用这个特性来随机的生成字母与符号了,它们的公式非常的相似,原理都是一模一样的

生成随机大写字母:=CHAR(RAND()*26+65)

生成随机小写字母:=CHAR(RAND()*26+97)

生成随机字符:=CHAR(RAND()*6+42)

跟大家简单的讲解下这个函数的原理,在CHAR如果出现小数,它会将小数舍去,仅仅保留整数部分,这样的话我们使用RAND()*26,就会获取一个0到26的随机整数

随后我们再将这个结果加上65,这个65就是第一个大写字母A对应的Unicode 数值,这样的话就会生成一个随机的大写字母,其余的2个公式也是这样的原理

乘号后面的是字符的个数,加号后面是的这一组中第一个Unicode 数值对应的数值。

三、构建随机密码

最难的自动生成字母与符号已经解决了,这个随机密码的构建就非常的简单了,比如在这里我们构建一个10位的密码,其中包好3个字母与2个符号,只需要将公式设置为

=CHAR(RAND()*26+65)&CHAR(RAND()*26+65)&CHAR(RAND()*26+65)&RANDBETWEEN(11111,99999)&CHAR(RAND()*6+42)&CHAR(RAND()*6+42)

这个公式看起来虽然很长,但是理解起来非常的简单,我们利用连接符号连接了三个CHAR(RAND()*26+65)与2个CHAR(RAND()*6+42)来生成随机的字母与符号。再利用RANDBETWEEN(11111,99999)来生成一个随机的5位数字即可

以上就是今天分享的全部内容,如果不太理解,这个公式大家直接套用即可。

我是Excel从零到一,关注我,持续分享更多Excel技巧

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20220207A09UQL00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券