Excel函数输入随机不重复数值
原创
©著作权归作者所有:来自51CTO博客作者kirin的原创作品,如需转载,请与作者联系,否则将追究法律责任
在A1单元格中输入随机函数此函数将在1至10之间随机提取1个整数。
A2单元格输入={LARGE(IF(COUNTIF($A$1:A1,ROW($1:$10)),,ROW($1:$10)),RANDBETWEEN(1,10-ROW(A1)))}
此函数为随机不重复的重要部分 注:{……}这个括号是同时安Ctrl+Shift+Enter得到的数组公式形式,无需输入。
如A1单元格的随机函数得出的值为8:
(1)COUNTIF($A$1:A1,ROW($1:$10)
部分将提示A1单元格数字在ROW($1:$10)数组即{1;2;3;4;5;6;7;8;9;10}中的位置。则COUNTIF($A$1:A1,ROW($1:$10)得到的数组为{0;0;0;0;0;0;0;1;0;0}
(2)IF(COUNTIF($A$1:A1,ROW($1:$10)),,ROW($1:$10))
部分根据之前COUNTIF得到的数组,计算得到{1;2;3;4;5;6;7;0;9;10}
(3)RANDBETWEEN(1,10-ROW(A1))
此时计算得到RANDBETWEEN(1,{10}),随机产生1到10的数据。
(3)函数此时将IF函数计算得到{1;2;3;4;5;6;7;0;9;10}、RANDBETWEEN函数得到的随机数代入;
按住Ctrl+Shift+Enter输入为数组,就得到一个1至10且除A1单元格8以外的数值。
A3:A10单元格由A2拖拉公式可以得到。
A3单元格