Excel中两列部分相同的名字怎么进行对比并且清晰的显示出来

来源:百度知道 编辑:UC知道 时间:2024/06/23 22:41:19
我要对比两列不同的名字数据,并且能够很直观的显示出来,好让我知道哪列缺了哪个,或者说哪列多了哪个。

举个例子:
A列为: 张三 王五 李四 老刘 方七
B列为: 方七 老刘 孙膑 张三

然后我要对比并且清晰的显示谁多了谁谁少了谁

如何做到?
我想要的是两列能够各自排序,并且留出空格来说明这个位置的人旁别那列有,但是自己这列没有。

另外如果你那个公式能够做到以上的,能否麻烦说明下你的这个语法规则。

谢谢

这个要求只能用宏来实现了,试试我写的这个:

执行完成后,会用不同颜色区分两边有差异的数据,并会在当中的空列中自动填写1或2或空,你可以用自动筛选来轻松找出差异:填写1(或2)表示第1(或2)组中此数据在第2(或1)组中不存在;空白的表示此行数据两边都能对应上。

Option Explicit
Dim x1, y1, x2, y2, x3, i, k As Integer

Sub 查找两列不同数据()
'
' 查找两列不同数据 Macro
' JamesChen 记录的宏 2008/7/18
' 使用说明:把要对比的两组数据(数据中不可有空列)放在同一个表中,中间用一个空列分隔。要比较的关键列放在两组数据的第一列上,并对两组数据按关健列从小到大排序
' 注:第一列不进行比较,作为标题。

'
' 确定第一列的列数,第一个不为空的列
' 第一行不算,从第二行开始

If MsgBox("确认要进行处理吗?" + Chr(13) + Chr(13) + "注意:" + Chr(13) + "1)各组数据必须从小到大排序;" _
+ Chr(13) + "2)第一行为标题,各组数据第二行一定要整齐不可有空格;", vbOKCancel + vbQuestion, "查找两列不同数据宏 -James") = vbCancel Then
Exit Sub
End If

x1 = 1
While Cells(2, x1) = ""
x1 = x1 + 1 '第一列的起列
Wend
' 确定第二列的列数
'先找到第一个系列的单元格
x