Excel 中,查找D列所有重复值并返回对应A列值

Excel 中,A列为不同的值,C,D,E列为数值,每列有重复的值,需在第二张表格中依次列出D列中重复的数值对应的A列值,请问如何解决?

检查D列所有重复值并返回对应A列数据的步骤是:

1、打开Excel工作表;

2、观察数据规律,D列存在较多组的重复值,对应的A列数据个数也不确定,因此需要先将D列重复数据整理出来,然后再筛选出其对应的A列数据。

3、在F2单元格输入以下数组公式,按Ctrl+Shift+Enter组合键结束,然后向下填充公式

=IFERROR(INDEX(D:D,SMALL(IF((COUNTIF(D$1:D$10,D$1:D$10)>1)*(MATCH(D$1:D$10,D$1:D$10,0)=ROW($1:$10)),ROW($1:$10),4^8),ROW(A1))),"")

公式表示:定位到D列,将满足出现次数超过1次的数据不重复地筛选出来。

4、在G2单元格输入以下数组公式,按Ctrl+Shift+Enter组合键结束,然后向右向下填充公式

=INDEX($A:$A,SMALL(IF($D$1:$D$10=$F2,ROW($1:$10),4^8),COLUMN(A1)))&""

公式表示:定位到A列,将满足D列等于F2条件的对应A列数据筛选出来,逐一罗列。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-05-19
D列有相同值,相同值对应不同的A列值。
用VLOOKUP函数求一对一或一对多比较容易,求多对一就不太容易了。
第2个回答  2016-05-17
D与A列是一对多的关系,你只要将D列放到A列前面,并排序就可以看到其对应的A列值了啊?
若有问题,继续追问追问

D列移动到A列前,是可以很容易解决,现在主要是D列在表格里的结构是放在A列的后面的,所以需要在不移动的情况下处理

追答

不是很明白你这么做的意义所在,无法提供进一步的方案,抱歉。

追问

已解决,方式如下
a 8 8 5
b 3 6 6
c 8 9 7
d 5 5 8
e 2 7 7
f 8 8 6
g 2 5 5
h 5 6 7
g 8 9 8
h 4 8 6

=INDEX(A:A,SMALL(IF($D$1:$D$10=8,ROW($1:$10),4^8),ROW(A1)))&""
ctrl+shift+enter输入
还是谢谢了

本回答被网友采纳
相似回答