
例1 经典用法:官方示例

B3=RANDBETWEEN(B1,B2)
例2 随机生成代码

解赋解释:
红色 6 部分是指,引用了同个数值,这里就写几个.
少写:如果引用了10个,只写5个,那么只会显示引用数据的前几个.
多写:如果引用了5个,写10个,那么会按多写的个数的概率显示"#REF!".
例3 随机生成指定数值

指定数值方式
=CHOOSE(RANDBETWEEN(1,6),1,10,100,1000,10000,100000)
引用数值方式
=CHOOSE(RANDBETWEEN(1,6),A2,A3,A4,A5,A6,A7)
注:本例中 CHOOSE 函数:从参数表中选择特定的值
例4 随机抽奖
计算机随机产生一个整数(1至5),自己输入一个整数,若两数相同,则输出“恭喜你,中奖了!奖金10元”,否则输出“没中奖,再接再厉”;同时公布中奖号码.如果你想把中奖率降低,再加大数据.
例5 随机生成26个英文字母的其中一个

这里推荐4种不同方式:
B2=CHAR(RANDBETWEEN(65,90))
CHAR函数:返回与字符代码相对的字符,56~90是26个字母的代码.详见CHAR函数.
B3=INDEX({"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"},1+RAND()*26)
INDEX函数:返回行和列交差位置的单元格引用.返回行和列交叉位置的值.
B4=MID("ABCDEFGHIJKLMNOPQRSTUVWXYZ",RANDBETWEEN(1,26),1)
MID函数:从一个文本字符串的指定位置开始,截取指定数目的字符.
B5=CHOOSE(RANDBETWEEN(1,26),"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z")
CHOOSE函数:从参数表中选择特定的值.
随机生成 ABC 3个英文字母的其中一个
B3=INDEX({"A","B","C"},1+RAND()*3)
B4=MID("ABC",RANDBETWEEN(1,3),1)
B5=CHOOSE(RANDBETWEEN(1,3),"A","B","C")
本小例与上题基本一样,只是减少数值,供大家理解。
例6 随机生成5位的奇数与偶数(10000-99999间的值)

解赋解释:

从测试上可以看到,如果随机数是十万的时候,向上舍入的奇数是100001,随机数就成生成为6位.
两个指定数之间
随机生成5位的奇数与偶数(1-99999间的值),不足5位前面补 0 .

B2=TEXT(ODD(RANDBETWEEN(1,100000)),"00000")
B5=TEXT(EVEN(RANDBETWEEN(1,100000)),"00000")
TEXT函数:将数值转换成自由的显示格式文本.
因为本小例是从1开始,1只有一位数,题目要求是5位,这时用TEXT函数把单元格的格式转换成我们指定的5位,不足5位前面加0补足.
例7 随机生成6位的数字字母混合数据
解赋解释:
分析嵌套公式一般从里向外剖析.
1、生成单个的数据
=INDEX($A$2:$A$11,RANDBETWEEN(1,10),1)
2、按F9生成下面公式的试算过程.
7
红色字是随机生成,代表从左向右数取第几个值.
3、INDEX 公式中的$A$1:$A$10是要引用的数据;
RANDBETWEEN中的(1,10):1是指定从引用的单元格第1个开始,10是指要取到第10个.
4、最后一个 1 是 INDEX 函数在单元格引用方式使用时,返回行和列交差位置的单元格引用.选择引用中的一个区域,并返回该区域中row_num和column_num的交叉区域.选中或输入的第一个区域序号为1,第二个为2,以此类推.如果省略area_num,函数INDEX使用区域1.
5、CONCAT 函数是将多个区域和/或字符串的数据组合起来.
6、从下面的公式可以看出来,数据是靠左,说明是文本型,第一个是 0 也能显示.

7、如果你要生存更多地数字与字母,可以在B列增加,并增加 INDEX 函数第一个参数的区域, RANDBETWEEN 函数第一个参数的第二个数值,即可.
这样设置好处是,可以自由取舍要哪些数字与字母,同时可以区分大小写.
说明:文章节选自本人作品《函数宝典》2019.1版,这里内容更新、公式更全,但原作是EXCEL文件,学习时可以直接复制公式使用,相对方便。