复制
=SEQUENCE(COUNTA(B:B)-1) COUNTA(B:B)-1部分,计算B列非空单元格的个数。减去1,得到不包含标题行在内的实际记录数。 SEQUENCE函数用于生成指定行列的序列号。本例中,生成序号的行数由COUNTA(B:B)-1的结果来指定。也就是B列有多少行数据,SEQUENCE函数就生成对应行数的序号。 2、生成随机面试顺序如下图所示,希望将A列的10个姓名,随机生产面试顺序,也就是得到1~10的随机不重复数。 B2单元格输入以下公式,每按一次F9键,就可以得到一组随机不重复的序号: 复制
先使用SEQUENCE(10)部分,生成1~10的序号。 再使用RANDARRAY(10),得到10个随机小数。 最后用SORTBY函数,以随机小数为排序依据,对序号进行排序处理。 每按一次F9键,RANDARRAY函数就会得到不同的随机小数,相当于给了SORTBY函数不同的排序依据。 3、随机分组如下图所示,希望将A列的姓名随机分成4组。 C2单元格输入以下公式,每按一次F9键,就可以得到四组随机排列的名单: 复制
=IFERROR(INDEX(SORTBY(A2:A21,RANDARRAY(20)),SEQUENCE(10,4)),'') 公式中的SORTBY(A2:A21,RANDARRAY(20))部分,先使用RANDARRAY(20)得到20个随机小数,再使用SORTBY以随机小数为排序依据对A列姓名进行随机排序。 SEQUENCE(10,4)部分用来生成10行4列的序列号。 INDEX函数根据SEQUENCE生成的序列号,从随机排序后的姓名中返回对应位置的内容。 最后,使用IFERROR函数屏蔽可能出现的错误值。 |
|