两个EXCEL表A.B,其中A有一万多个身份证好吗,B有3万多,A中有一千多个在B里面没有,如何筛选出这些人。

请自己试验一下,顺便截图给我看看,如果能成功会多给分的~谢谢了

设表A和表B的身份证列均为A列。

在表A中的空白列(假设为b列)的第一的空白单元格输入下面的函数:

=COUNTIF(表B!A:A,A1)

之后下拉。

然后,使用“自动筛选”功能,在b列选则0,就能得到你要的数据了。


效果见下图:

表B数据

表A数据

自动筛选后的结果

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-08-22
假如两列都是在A列,选择表1的C列,设置为文本格式。从C2起为存放结果。代码如下:
Sub 数组查找()
Dim i%, j%, arr1(), arr2, e, d$

arr1 = Range([a1], Cells(Rows.Count, 1).End(xlUp))
With Worksheets(2)

arr2 = .Range(.[a1], .Cells(Rows.Count, 1).End(xlUp))
End With
For i = 1 To UBound(arr1)

e = Application.vlookup(arr1(i, 1), arr2, 1, 0)
If TypeName(e) = "Error" Then
d = d & "," & arr1(i, 1)
j = j + 1

End If

Next i
Range("c1:c" & j + 1) = Application.Transpose(Split(d, ","))

End Sub
第2个回答  2012-08-14
方便起见 两个表复制到一个表里 A表的放在A栏 B表的放在B栏
VBA代码如下

Sub www()
n = 0
m = 0
s:
Do While n < 10000
n = n + 1
i = 0
Do While i < 30000
i = i + 1
If Range("a" & n) = Range("b" & i) Then GoTo s:

Loop
m = m + 1
Range("c" & m) = Range("a" & n)
Loop

End Sub本回答被提问者和网友采纳
相似回答