我在A列的n个单元格中有n个唯一值。(例如:EDN12、EDN122、EDN991等)
我想从A列返回任意五个不重复的唯一值,并以随机顺序将其返回到单个单元格中,用逗号分隔n次。(第12版、第112版、第991版、第881版、第12版)
我如何实现这一目标?
我试过这里提供的这个公式(将列表的随机顺序返回到单个单元格中)=TEXTJOIN(",",,INDEX($A$1:$A$5,UNIQUE(RANDARRAY(1000,1,1,5,TRUE))))
但它只为A列中的起始五个单元格生成五个值,其余的被省略。
2条答案
按热度按时间nwlqm0z11#
假设列A中的值本身是唯一的,请尝试:
否则,只需将'x'嵌套在
UNIQUE()
中:carvr3hs2#
这是不使用LET获得所需结果的替代公式。
虽然我更喜欢使用LET函数的解决方案。
分解:
根据数据行数获取一个随机数数组。
从随机数数组中提取唯一值。
提取前五个唯一值
使用提取的值从源数据中提取匹配的行。
最后将这些值合并到一个单元格中。
如果您的数据列表非常短,那么它可能返回非唯一值。
虽然您的示例看起来至少有1000个数据行,所以这不会是一个问题。