第1个回答 2016-01-14
首先,目前版本的EXCEL还没有一个直接的函数可以实现“随机字母数字串”,类似的函数只有输出随机的数字,包括两个函数:
1、rand(),随机生成一个0到1之间的小数。
2、RANDBETWEEN(bottom,top),生成bottom与top之间的随机整数。
因为字母、数字等的编码在国际标准ASCII码表中已经定义,随意要生成一位字符或一位数字可以用CHAR(ascii)函数来实现。数字0-9对应ASCII码48—57,大写字母A-Z对应ASCII码65—90。
综上,此问题可以采用如下方式来实现(假设字母是大写):
1、先用CHAR(RANDBETWEEN(bottom,top))函数生成一位A-Z的字母,或者一位0-9的数字。
2、用RANDBETWEEN(1,2)来生成随机数1或2。当然用rand()生成一个0-1的小数也可以,这个只是作为下一步生成的是字母或数字的条件。
3、利用IF(RANDBETWEEN(1,2)=1,CHAR(RANDBETWEEN(48,57)),CHAR(RANDBETWEEN(65,90)))来随机选择,生成一位字母或者数字。(把RANDBETWEEN(1,2)=1改为rand()>0.5,一样的效果)
4、需要多位的随机字母数字串,用&函数将3生成的单字符或数字连起来就可以了。
第2个回答 2012-07-19
=CHAR(RANDBETWEEN(65,90))&TEXT(RANDBETWEEN(0,9999),"0000")&CHAR(RANDBETWEEN(65,90))&TEXT(RANDBETWEEN(0,9999),"0000")