第3个回答 2010-01-29
对于单独的两列,那么用vlookup最合适了
如果你是说整个表格,有两张非常类似的表,你希望找出其中少数的相同部分,有三个办法
1.数组公式:
excel有个比较函数,excat,两个参数,相同返回true,不同返回false,你可以下拉让它逐个单元格对比,然后筛选出true的部分,或者直接给出不同的路径:
ADDRESS(IF(EXACT(A表范围,b表范围),ROW(A表范围),0),IF(EXACT(A表范围,B表范围)COLUMN(A表范围),0),4)
这个公式输入的时候要先选择足够大的区域(和A表一样大),然后数组输入,则会在不同出现#value错误值,超出A表范围的空单元格内会出现#N/A错误。相同的地方会显示出坐标,基本上一目了然了。因为ADDRESS参数不能是0。
2. VBA
Sub aa() '只用一个按钮
Dim r, c
For r = 1 To 10
For c = 1 To 5 '区域范围为十行五列
Worksheets("Sheet3").Cells(r, c) = Worksheets("Sheet1").Cells(r, c) '复制sheet1的内容
If Worksheets("Sheet1").Cells(r, c) == Worksheets("Sheet2").Cells(r, c) Then
Worksheets("Sheet3").Cells(r, c).Interior.ColorIndex = 3
End If
Next
Next
End Sub
会在sheet3显示出相同内容,如果很大,这个代码运行比较慢的话,就用SQL数据库吧。
3.用第三方软件:
推荐Beyond Compare 专业的文件比较软件,支持excel,word,ppt,pdf等。