如何使用excel公式在列中获取唯一值

sam*_*sam 18 excel-formula excel-2010

我有如下的Excel数据

       JID     Val

       1001    22
       1030    6
       1031    14          
       1041    8
       1001    3
       2344    8
       1030    8
       2344    6
       1041    8
Run Code Online (Sandbox Code Playgroud)

如何使用公式获得如下所示的唯一JID值?

UJID   

1001
1030
1031
1041    
2344
Run Code Online (Sandbox Code Playgroud)

小智 15

这是一个从表中获取唯一项列表的解决方案

该解决方案分为两部分.

第1部分)唯一计数

{= SUM(IF(频率(IF($ A $ 2:$ A $ 10 <> "",MATCH($ A $ 2:$ A $ 10,$ A $ 2:$ A $ 10,0)),ROW($ A $ 2: $ A $ 10)-ROW($ A $ 2)+1),1))}

这将计算数据表中唯一项的数量,并忽略任何空白

*注意这是一个数组公式,您需要使用"Ctrl"+"Shift"+"Enter"来使用

第2部分)唯一列表

此公式将为您提供表格中的唯一项目列表

= {IF(ROWS($ E $ 5:E5)> $ E $ 2 "",INDEX($ A $ 2:$ A $ 10,SMALL(IF(频率(IF($ A $ 2:$ A $ 10 <> "", MATCH($ A $ 2:$ A $ 10,$ A $ 2:$ A $ 10,0)),ROW($ A $ 2:$ A $ 10)-ROW($ A $ 2)+1),ROW($ A $ 2:$ A $ 10)-ROW($ A $ 2)+1),行($ E $ 5:E5))))}

再次这是一个数组公式.然后,您可以向下拖动此公式以获取所有唯一项目.

此公式是动态公式,这意味着您可以将数据范围设置为超出当前数据范围,并且列表将在您输入新值时更新.

*这是一个很棒的视频,可以进一步了解这一点

https://www.youtube.com/watch?v=3u8VHTvSNE4

在此输入图像描述


Rah*_*hah 14

您可以使用删除重复功能

选择列范围

转到Data标签

然后点击 Remove Duplicates

  • 这是正确的答案吗?标题说"使用公式",这个答案没有. (5认同)

Bal*_*int 9

选择不同的值

我想我找到了一个没有数组函数或内置函数的更优雅的解决方法:

  • 1个第一栏(ID):
    this is the array from we'd like to select distinct values

  • 2 柱(条件):检查是否是第一次出现
    =IF((ROW()-1)=MATCH(A2,$A$2:$A$500,0),1,0)

  • 3 RD柱(累计):
    =SUM($B$2:B2)

  • 4 列(计数):
    this is constant 1

  • 5 列(唯一ID):
    =OFFSET($A$2,MATCH(ROW()-1,$C$2:$C$501,0)-1,)

  • 6 列(计数):
    =SUMIF(A2:A21,F2,D2:D21)