Excel在多个柱中find重复的单元格

我有一个有4列的Excel表,需要find所有4列中相同的值,并放在一边。 试图找出如何在Excel中完成这一点。

例:

Column 1 Column 2 Column 3 Column 4 A1 B1 B1 A1 B1 C2 C1 B1 C2 D3 C2 C2 

在这个例子中, B1C2的值都是符合的,必须放在一边。

把这个公式放到D1单元格中,并拖放它直到你的值的最后:

 =IF(AND(COUNTIF($B$1:$B$3,A1)>0,COUNTIF($C$1:$C$3,A1)>0,COUNTIF($D$1:$D$3,A1)>0),A1,"not found") 

备案,法文版本:

 =SI(ET(NB.SI($B$1:$B$3;A1)>0;NB.SI($C$1:$C$3;A1)>0;NB.SI($D$1:$D$3;A1)>0);A1;"not found") 

要生成出现在所有四列中的值列表,请在单元格F2中尝试:

=INDEX(A$1:A$3,MATCH(TRUE,COUNTIF(B$1:B$3,A$1:A$3)*COUNTIF(C$1:C$3,A$1:A$3) *COUNTIF(D$1:D$3,A$1:A$3)*NOT(COUNTIF($F$1:F1,A$1:A$3))>0,0))

用CTRL + SHIFT + ENTER确认,并根据需要填写(假设F1是空的或包含无关的数据)

我无法得到上述例子为自己工作,所以我想出了另一个解决scheme。 希望这会帮助其他人:

 =IF(ISNUMBER(MATCH($A2, $B$2:$B$4, 0)), IF(ISNUMBER(MATCH($A2, $C$2:$C$4, 0)), IF(ISNUMBER(MATCH($A2, $D$2:$D$4, 0)), $A2, ""), ""), "") 

这将检查“列1”(excel中的“A”列)中的值与接下来的3列(B,C,D)。 如果三个值都存在,则返回A列值。 如果全部不存在,则返回空。 如果您宁愿返回其他内容,请在空引号之间插入一些内容。

对于您的数据,请inputsearch列的长度,从B到D.例如,在“$ B $ 4”的位置input“$ B $ 99”,如果单元格下降到99,则它应该工作你input一个很大的数字,例如99999。

把它放在第一个值的那一行,所以在这里就是E2,然后把它复制到列A中有一个值的每一行。

该函数只是嵌套IF语句,可以扩展或收缩取决于你想检查多less列。 该function也可以很容易地修改成“检查列B或列C”function。

这里是一个值的例子; 我不能一概而论,因为我没有看到你的数据源

 Sub test() If (Range("D6").Value = Range("D6").Offset(0, 1).Value) Then MsgBox "match" End If End Sub 

您也可以使用DATA->删除重复删除多个列中的重复项。