在条件下随机选择行

时间:2017-05-31 16:19:11

标签: excel random excel-formula

在我的电子表格中,我有以下数据集

ID         pack
1          a
1          b
1          c
2          a
3          c
4          a
4          c

我想在excel中使用一个函数,它随机选择一个ID不唯一的行(它不重要哪个,但我需要它是每个ID唯一的一个),否则必须重复同一行。

根据示例的结果应如下所示:

ID         pack
1          b
2          a
3          c
4          c

我尝试添加名为 count 的第三列(计算ID在数据库中重复的次数)并计算新字段为

IF(**count**=1,1,RANDBETWEEN(0,1))

但在某些情况下,ID(包含多个包)始终为0,在其他情况下始终为1。

ID         pack    count    check
1          a       3        1
1          b       3        0       
1          c       3        0
2          a       1        1
3          c       1        1
4          a       2        0
4          c       2        0

当然,最后一步是使用

的新列
IF(**check**=1,**pack_name**,0)

1 个答案:

答案 0 :(得分:2)

使用您提供的ID时,请使用以下公式:

=INDEX(B:B,AGGREGATE(15,6,ROW($A$2:$A$8)/($A$2:$A$8=D2),RANDBETWEEN(1,COUNTIF(A:A,D2))))

放入E2然后复制/向下拖动。

然后点击F9,它将随机选择与ID匹配的不同输出。

enter image description here