小佳佳 发表于 2021-10-11 11:13:00

表内随机选取一个非空单元格的数值


如图,A1:F15内有各项数值,要求在H1内显示:
随机抽取表中任意有数值的单元格并显示。例:g1,g2,g4
求问:应该用哪个函数?

本色回味 发表于 2021-10-12 06:54:49

=LEFT(RIGHT(TEXTJOIN(,1,A1:F1),RANDBETWEEN(1,6)*2),2)

熊粑粑 发表于 2021-10-18 16:14:09

=indirect(text(small(if(a1:f15>0,row(1:15)*10+column(a:f)),randbetween(1,counta(a:f))),"r0c0"),)

谭耀良 发表于 2021-10-24 12:35:45

好像出现了错误,显示#NAME?

独瓣蒜 发表于 2021-10-31 10:19:27

谢谢大佬,数组可以使用,如果还要加一点难度,数据区域为两块怎么处理呢?
比如:B5:M79和O5:X82 ,两个区域内随机抽取一个非空数据,应该怎么加入?

帥哥 发表于 2021-10-31 21:46:18

H1=INDEX(T(OFFSET($A$1,ROW($1:$75)/6,MOD(ROW($1:$75)+4,5))),SMALL(IF(T(OFFSET($A$1,ROW($1:$75)/6,MOD(ROW($1:$75)+4,5)))<>"",ROW($1:$75),4^8),RANDBETWEEN(1,COUNTA($A$1:$E$15))),)
数组三键

韩红 发表于 2021-11-1 08:59:45

谢谢大佬,数组可以使用,如果还要加一点难度,数据区域为两块怎么处理呢?
比如:B5:M79和O5:X82 ,两个区域内随机抽取一个非空数据,应该怎么加入?

好一点精品咖啡 发表于 2021-11-3 13:50:09

还有,如果不用数组公式的话,有其他函数可以代替吗?比如数据量过大,用数组每次进入都要卡顿很久的情况下

松佑 发表于 2021-11-6 22:13:54

还有,如果不用数组公式的话,有其他函数可以代替吗?比如数据量过大,用数组每次进入都要卡顿很久的情况下

懿緣萱 发表于 2021-11-10 01:52:27

=INDIRECT(TEXT(SMALL(IF((B5:X82>0)*((ROW(5:82)<80)*(COLUMN(B:X)<14)+(COLUMN(B:X)>14)),ROW(5:82)/1%+COLUMN(B:X)),RANDBETWEEN(1,COUNTA(B5:M79,O5:X82))),"r0c00"),)
页: [1] 2 3
查看完整版本: 表内随机选取一个非空单元格的数值