0-9随机数字表,1-12随机数字

首页 > 教育 > 作者:YD1662024-05-19 17:34:22

网上有一公式可以随机生成0-9的不重复数字,如下:

=SMALL(IF(COUNTIF($D11:D11,{0;1;2;3;4;5;6;7;8;9})=0,{0;1;2;3;4;5;6;7;8;9}),INT(RAND()*(10-COLUMN(A1))) 1)

但仔细观察,此公式存在弊端,见下面gif图演示:

0-9随机数字表,1-12随机数字(1)

就是最后一个数字必定是9。

为此,现在用其他思路来实现这个目标。

首先介绍一个自定义函数:newtext

该函数并非本人所写,而是ehome上某版主N年前所写。

作用是批量删除某个字符串中的多个字符。

0-9随机数字表,1-12随机数字(2)

第一个数字的函数公式为:=INT(RAND()*10)

0-9随机数字表,1-12随机数字(3)

第二个数字起函数公式为:

=MID(newtext("0123456789",$E$10:E10),INT(RAND()*(10-COLUMN(A1))) 1,1)

其中newtext函数是将出现过的数字从字符串"0123456789"中删除,如下图中删除第一个数字8.

0-9随机数字表,1-12随机数字(4)

删除数字之后再用mid函数随机提取数字,然后第三个数字则像第二个数字这样处理,字符串"0123456789"随机删除两个数字,剩下8个,然后在这8个数字中随机挑一个出来。

0-9随机数字表,1-12随机数字(5)

其他数字亦然。

结果见下面的gif演示:

0-9随机数字表,1-12随机数字(6)

栏目热文

文档排行

本站推荐

Copyright © 2018 - 2021 www.yd166.com., All Rights Reserved.