excel中关于去除重复值的公式

如下图所示,有B、C两列数目前已经实现用函数取得B列的不重复值列表=INDEX($B$2:$B$100,MATCH(0,COUNTIF(D$2:D2,$B$2:$B$100),0))&""按ctrl+shift+enter结束公式但现在想取得C列中B列等于某值时的不重复值列表,该怎么设置公式呢?
如设置值为“贾维斯”时希望得到的结果 是LB001.……LB005

E2公式:=IFERROR(INDEX(A$2:A$100,SMALL(IF((B$2:B$100<>"")*(MATCH(B$2:B$100&C$2:C$100,B$2:B$100&C$2:C$100,)=ROW($1:$99)),ROW($1:$99),9^bai9),ROW(A1))),"")

Microsoft Excel是Microsoft为使用Windows和Apple Macintosh操作系统的电脑编写的一款电子表格软件。直观的界面、出色的计算功能和图表工具,再加上成功的市场营销,使Excel成为最流行的个人计算机数据处理软件。在1993年,作为Microsoft Office的组件发布了5.0版之后,Excel就开始成为所适用操作平台上的电子制表软件的霸主。

Microsoft Office是一套由微软公司开发的办公软件套装,它可以在Microsoft Windows、Windows Phone、Mac系列、iOS和Android等系统上运行。与其他办公室应用程序一样,它包括联合的服务器和基于互联网的服务。从2007版的Office被称为“Office System”而不叫“Office Suite”,反映出它们包括服务器的事实。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-11-08
假设取D3(森林)的C列不重复值,公式:
=IFERROR(INDEX(C$2:C$100,MATCH(,IF(B$2:B$100=D$2,COUNTIF(E$2:E2,C$2:C$100)),)),"")
数组公式,需要按CTRL+SHIFT+回车,完成公式,下拉。追问

得到的是一列0

追答

你的公式放到了F列,需要修改公式:
=IFERROR(INDEX(C$2:C$100,MATCH(,IF(B$2:B$100=D$2,COUNTIF(F$2:F2,C$2:C$100)),)),"")
数组公式,需要按CTRL+SHIFT+回车,完成公式,下拉。

第2个回答  2018-11-08

你就是想得到两列不重复的值吧。

D2=IF(SUMPRODUCT((B$2:B2&C$2:C2=B2&C2)*1)=1,MAX(D$1:D1)+1,"")向下复制

F2=IFERROR(VLOOKUP(ROW(A1),IF({1,0},$D$2:$D$27,B$2:B$27),2,0),"")向下向右复制

第3个回答  2018-11-08
=INDEX(B:B,MATCH(E2,C:C,0))追问

你这不是我要的结果,我要的是C列的不重复值。
但还是谢谢你的解答

追答

=INDEX(C:C,SMALL(IF(IFERROR(MATCH("贾维斯"&$C$2:$C$100&"",$B$2:$B$100&$C$2:$C$100&"",0),0)=ROW($2:$100)-1,ROW($2:$100),4^8),ROW(1:1)))&"",数组公式,即同时按住Ctrl+Shift+Enter结束公式编辑,会自动生成一对“{}”,向下填充。
另外建议将B列不重复提取公式改为:
=INDEX(B:B,SMALL(IF(MATCH($B$2:$B$100&"",$B$2:$B$100&"",0)=ROW($2:$100)-1,ROW($2:$100),4^8),ROW(1:1)))&"",数组公式,即同时按住Ctrl+Shift+Enter结束公式编辑,会自动生成一对“{}”,向下填充。
虽然公式长点,但这是标准公式,不依赖于公式所在单元格,仅与数据所在的B列本身有关,此公式可输入在除B列外的任何区域。

本回答被提问者采纳