如何在Google Sheets中实现1-8的无重复随机排列函数
在Google Sheets中生成1-8的无重复随机排列函数
可以使用SORTBY+SEQUENCE+RANDARRAY的组合公式直接实现需求,完全避免重复数字:
=SORTBY(SEQUENCE(8), RANDARRAY(8))
公式拆解:
SEQUENCE(8):生成1到8的连续整数序列(无重复的基础序列)RANDARRAY(8):生成8个0-1之间的随机小数,为排序提供随机依据SORTBY:以随机小数为排序键,打乱基础序列的顺序,最终得到1-8的无重复随机排列
如果需要将结果横向输出(一行内),可以用TRANSPOSE转置:
=TRANSPOSE(SORTBY(SEQUENCE(8), RANDARRAY(8)))
关于重复问题的说明:
你之前用的普通随机数组函数(比如RANDARRAY(1,8,1,8,TRUE))是独立生成每个数字,因此存在重复概率。而上述方法是先构建完整的无重复序列,再通过随机排序打乱顺序,从逻辑上杜绝了重复。
内容的提问来源于stack exchange,提问作者Jeffrey GLASSMAN
相关产品推荐
相关产品推荐

