我有下表。基本上,A列是主数据。 B,C和D列将包含A列中的一些数据.B,C和D列可以有共同的数据。
我想将数据列A与列B,C和D进行比较。 在“结果”列中,显示所有不匹配数据。
答案 0 :(得分:1)
尝试一下:
Sub MissingItems()
Dim N As Long, I As Long, J As Long, V As String
Dim r As Range
N = Cells(Rows.Count, 1).End(xlUp).Row
J = 1
For I = 1 To N
V = Cells(I, 1).Value
Set r = Nothing
Set r = Range("B:D").Find(V, After:=Range("B1"))
If r Is Nothing Then
Cells(J, 5).Value = V
J = J + 1
End If
Next I
End Sub
答案 1 :(得分:0)
你可以使用这个“大”数组公式:
=INDEX($A$1:$A$10;SMALL(IF(NOT(COUNTIF($B$1:$B$2;$A$1:$A$10)+COUNTIF($C$1:$C$3;$A$1:$A$10)+COUNTIF($D$1:$D$2;$A$1:$A$10));ROW($A$1:$A$10)-ROW($A$1)+1;"");ROW(A1)))
将公式写在您想要获得第一个的位置,然后将其复制下来以获取其他公式。
这是一个数组公式,所以不要忘记按Ctrl Shift Enter
根据您的区域设置,您可能需要替换字段分隔符“;”通过“,”
这个更小,仍然有效:
=INDEX($A$1:$A$10;SMALL(IF(NOT(COUNTIF($B$1:$D$3;$A$1:$A$10));ROW($A$1:$A$10)-ROW($A$1)+1;"");ROW(A1)))