excel怎么随机产生10位混合密码(含数字、字母)?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了excel怎么随机产生10位混合密码(含数字、字母)?相关的知识,希望对你有一定的参考价值。

随机1位小写字母:=CHAR(INT(RAND()*26)+97)

随机1位大写字母:=CHAR(INT(RAND()*26)+65)

随机1位大小写混合字母:=CHAR(INT(RAND()*26)+if(INT(RAND()*2)=0,65,97))

产生随机的10位数的大小写混合字母和数字混合:

=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)))),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)))))

天呀!!!累死了!哪位高人还有其他简单的方法吗?
参考技术A LS都是高手啊,小弟借问下(RAND()*9+48,RAND()*25+65,RAND()*25+97),用哪个函数调出里面3个random中任意一个数值,用or就变成判断了,结果为TRUE

我的方法和几位相同,concatenate,char,但是会有大小英文和数字这3种结果,code码又不相连,所以要从上述3个条件中选一个

请教请教,麻烦告知不胜感激

折中实现大小写字母和数字混合的密码
=CONCATENATE(CHAR(INT(CHOOSE(INT(RAND()*2.999+1),RAND()*9+48,RAND()*25+65,RAND()*25+97))),CHAR(INT(CHOOSE(INT(RAND()*2.999+1),RAND()*9+48,RAND()*25+65,RAND()*25+97))),CHAR(INT(CHOOSE(INT(RAND()*2.999+1),RAND()*9+48,RAND()*25+65,RAND()*25+97))),CHAR(INT(CHOOSE(INT(RAND()*2.999+1),RAND()*9+48,RAND()*25+65,RAND()*25+97))),CHAR(INT(CHOOSE(INT(RAND()*2.999+1),RAND()*9+48,RAND()*25+65,RAND()*25+97))),CHAR(INT(CHOOSE(INT(RAND()*2.999+1),RAND()*9+48,RAND()*25+65,RAND()*25+97))),CHAR(INT(CHOOSE(INT(RAND()*2.999+1),RAND()*9+48,RAND()*25+65,RAND()*25+97))),CHAR(INT(CHOOSE(INT(RAND()*2.999+1),RAND()*9+48,RAND()*25+65,RAND()*25+97))),CHAR(INT(CHOOSE(INT(RAND()*2.999+1),RAND()*9+48,RAND()*25+65,RAND()*25+97))),CHAR(INT(CHOOSE(INT(RAND()*2.999+1),RAND()*9+48,RAND()*25+65,RAND()*25+97))))本回答被提问者和网友采纳
参考技术B 按ALT+F11组合键,调出VBA窗口,插入一个模块,把下面代码复制进去,执行即可得到10位随机数
Sub b()
Dim r As Integer
Dim n As String
Randomize
For i = 1 To 10 '随机数10位
r = Rnd() * 2
If r = 0 Then
t = Int(Rnd() * 9)
Else
t = Chr(Rnd() * (122 - 97) + 97)
End If
n = n & t
Next
MsgBox n
End Sub
参考技术C sheet2的A列里面做一列密码字符,包括0-9,a-z,A-Z(总共62个)

sheet1的A1到J1写公式
=INDEX(Sheet2!$A$1:$A$62,RANDBETWEEN(1,62))
K1是密码,写公式
=CONCATENATE(A1,B1,C1,D1,E1,F1,G1,H1,I1,J1)
参考技术D 字母大小写不?给你个大写字母和数字的。
=CONCATENATE(IF(ROUND(RAND(),0),CHAR(RANDBETWEEN(48,57)),CHAR(RANDBETWEEN(65,90))),IF(ROUND(RAND(),0),CHAR(RANDBETWEEN(48,57)),CHAR(RANDBETWEEN(65,90))),IF(ROUND(RAND(),0),CHAR(RANDBETWEEN(48,57)),CHAR(RANDBETWEEN(65,90))),IF(ROUND(RAND(),0),CHAR(RANDBETWEEN(48,57)),CHAR(RANDBETWEEN(65,90))),IF(ROUND(RAND(),0),CHAR(RANDBETWEEN(48,57)),CHAR(RANDBETWEEN(65,90))),IF(ROUND(RAND(),0),CHAR(RANDBETWEEN(48,57)),CHAR(RANDBETWEEN(65,90))),IF(ROUND(RAND(),0),CHAR(RANDBETWEEN(48,57)),CHAR(RANDBETWEEN(65,90))),IF(ROUND(RAND(),0),CHAR(RANDBETWEEN(48,57)),CHAR(RANDBETWEEN(65,90))),IF(ROUND(RAND(),0),CHAR(RANDBETWEEN(48,57)),CHAR(RANDBETWEEN(65,90))),IF(ROUND(RAND(),0),CHAR(RANDBETWEEN(48,57)),CHAR(RANDBETWEEN(65,90))))

若干位随机数字字母混合验证码

今天,遇到了一个随机验证码的问题,就顺便说一下这个验证码怎么搞

相信大家应该对随机数不陌生

就是Math里的方法

这里要用到一个知识点 就是利用ASCII码转字符 

先附上随机数代码

 function suiji (m,n){ var sj = parseInt(Math.random()*(n-m+1)+m); return sj; } 

这里是我封装的一个m-n之间的随机数

随机数有了 我们就要用到ASCII码  看图

技术图片

看图 我们能知道 数字的范围是48-57 大写字母是65-90 小写字母是97-122

所以 我们可以总结出一个条件

 num>48&&num<=57 || num>65&&num<=90 || num>=97&&num<=122 

得出我们需要随机的范围

然后回用到一句代码  ASCII转字符

String.fromCharCode(num)

这样 我们就可以封装出一个方法了

function yz(){
    var a = "";
    for(i = 0;i < 6; i++){
        var num = suiji(48,122)
        if(num>48&&num<=57 || num>65&&num<=90 || num>=97&&num<=122){
            a += String.fromCharCode(num);
        }else{
            i--
        }
    }
    return a;
}

当然了  这还没完呢

HTML结构

<button class= "btn">换一个</button>
    <input type="text" name="" id="" placeholder="随机数">

JavaScript

var btn = document.querySelector(".btn")
    var txt = document.querySelector("input")
    btn.onclick = function(){
        var txtvalue = yz();
        txt.value = txtvalue;
    }

获取到元素  然后将随机的内容交给input就可以做到了 

如果要将随机数放到一个div或span 是  需要将value改成innerHTml

 

以下为效果图

技术图片

以上是关于excel怎么随机产生10位混合密码(含数字、字母)?的主要内容,如果未能解决你的问题,请参考以下文章

在excel中怎样生成随机的4位字母数字组合,谢谢

密码4到16个字母和数字怎么设置

数字字母混合的4位验证码

求excel随机生成3位和4位小写字母的方法,用啥函数呢?非常感谢!

产生随机字串,可用来自动生成密码

若干位随机数字字母混合验证码