如何将excel中两列数据进行比对,并将结果返回到不同的列

比如说我现在A列中有3000个数字,B列中有2000个数字,我如何让它们进行比对并且将这两列中相同的数字填到C列,不同的数字填到D列??

就是如何求交集和差集的问题
如不用VBA,简单使用公式如下:先假设A列最后一行是第a行,B列最后一行是第b行。
单元格C1: 输入公式 =IF(COUNTIF(B:B,A1)>0,A1,"")
然后将C1的公式一直往下拖,拖到第x行(x=a、b两者最小值)
【C列中的非空单元格,就是A列和B列的相同值】
单元格D1: 输入公式 =IF(COUNTIF(B:B,A1)=0,TRIM(A1),"")
然后将D1的公式一直往下拖,拖到第a行

单元格E1: 输入公式 =IF(COUNTIF(A:A,B1)=0,TRIM(B1),"")
然后将E1的公式一直往下拖,拖到第b行

最后将D列和E列数据集中起来(比如,将E列数据,选择性粘贴到D列第a+1行),
【非空单元格就是,A列和B列的不同值】。

参考资料:小乐笑了

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-03-16
假如你要比较A列与B列数据是否重复,应该有三种结果(即AB皆有,A有B无,B有A无),可在C列存放A有B无的数据,在D列存放B有A无的数据,然后再将两列数据合并即可,方法如下:
1、在C1单元格输入公式:
=IF(COUNTIF($B:$B,A1)=0,A1,"")
在D1单元格输入公式:
=IF(COUNTIF($A:$A,B1)=0,B1,"")
将两个公式用填充柄向下复制到相应的行。
2、按C列排序,将C列数据集中在一起,将其复制到另一工作表的A列;再按D列排序,将D列数据集中在一起,并将其复制到另一工作表的A列的尾部。(注意:这两个操作要用“选择性粘贴/数值”进行粘贴)
3、删除原表的CD两列,将另一工作表中A列的数据复制回原表的C列。本回答被提问者采纳
第2个回答  2011-03-16
用VBA可解决。ALT+F11打开VBA窗口,双击左边的SHEET1,在右边粘贴下面代码,按f5运行。
默认为A1-A20,B1-B22的单元格范围,A20可改为A3000,B22可改为B2000。数据填充要C、D列。
Sub sample()
Dim mycell As Range
m = 1
n = 1
For Each mycell In Range("A1:A20", "B1:B22")
If Application.WorksheetFunction.CountIf(Range("A1:A20", "B1:B22"), mycell) > 1 Then
Cells(m, 3) = mycell
m = m + 1
End If
If Application.WorksheetFunction.CountIf(Range("A1:A20", "B1:B22"), mycell) = 1 Then
Cells(n, 4) = mycell
n = n + 1
End If
Next
End Sub
第3个回答  2011-03-16
先来一个,相同的意思是不是将B列与A列中有相同数据的数据返回,如果是假设数据在A1:A3000,B1:B2000中,C1中输入
=INDEX(B:B,SMALL(IF(COUNTIF(A$1:A$3000,B$1:B$2000),ROW(B$1:B$2000),4^8),ROW(A1)))&""
同时按下CTRL+SHIFT+ENTER输入数组公式,用自动填充柄下拉。
第二个问题,是返回两列不同的所有数据,还是返回A列中与B列中不同的A列所在数据,还是返回A列和B列不同数据的B列数据,如果返回两列不同的所有数据,公式应有难度,返回一列中的不同数据,公式比较容易。
第二公式,D1
=INDEX(B:B,SMALL(IF(COUNTIF(A$1:A$30,B$1:B$20)=0,ROW(B$1:B$20),4^8),ROW(A1)))&""
同时按下CTRL+SHIFT+ENTER输入数组公式,下拉,返回B列与A列不相同数据的数据。
第4个回答  2011-03-16
经测试,1楼的不能完成楼主的提问.主要的问题是输出到C列的数据照样重复了.
我改编了一下,
Sub sample()
Dim mycell As Range
m = 1
n = 1
a = "A1:A3000" '楼主如果要改A列的数据数量,改这里就行,你要是4000行,改成A1:A4000即可
b = "B1:B2000" '楼主如果要改B列的数据数量,改这里就行,你要是1000行,改成B1:B1000即可
For Each mycell In Range(a, b) '循环A1:A3000,B1:B3000里的每一个数据
If Application.WorksheetFunction.CountIf(Range(a, b), mycell.Value) > 1 And Application.WorksheetFunction.CountIf(Range("C1:C" & m), mycell.Value) < 1 Then
'如果这个区域里的数据数量大于1,即表示数据重复了,后面的条件是如果C列的数据数量小于1即表示未写入,然后将数据输出到C列
Cells(m, 3) = mycell.Value
m = m + 1
ElseIf Application.WorksheetFunction.CountIf(Range(a, b), mycell.Value) = 1 Then
'这里表示只有一个数据就输出到D列.
Cells(n, 4) = mycell.Value
n = n + 1
End If
Next
End Sub

经测试,圆满完成楼主的要求.
若楼主不懂VBA的话,我可以给楼主发文件,Hi我即可

如何将excel中两列数据进行比对,并将结果返回到不同的列
如不用VBA,简单使用公式如下:先假设A列最后一行是第a行,B列最后一行是第b行。单元格C1: 输入公式 =IF(COUNTIF(B:B,A1)>0,A1,"")然后将C1的公式一直往下拖,拖到第x行(x=a、b两者最小值)【C列中的非空单元格,就是A列和B列的相同值】单元格D1: 输入公式 =IF(COUNTIF(B...

如何将excel中两列数据进行比对,并将结果返回到不同的列
当然如果不怕麻烦的话就好说了,可以用条件计数统计每一个数字出现的次数,将次数为2的筛选出来放在C列,为1的放在D列就可以了!这个结果是最全面的

EXCEL表中两列数据的比对excel表中两列数据的比对怎么设置
方法一:使用等号单元格输入公式。在空白单元格中输入公式【=B2=A2】,然后下拉公式,两列内容相同的会返回TRUE,内容不同的会返回FALSE。接着可以筛选出为FALSE的数据,即可找出不同的数据。方法二:使用Ctrl+\\\\选中需要核对的数据。同时按下Ctrl和\\\\键,Excel会自动标记出不相同的行内容,接着可以给...

Excel表格两列数据如何进行比对
选择“样式”下的“条件格式”,鼠标左键单击“突出显示单元格规则”。选择“重复值”,在弹出的对话框中设置一些参数,并点击确定则可以用不同颜色标记处相同的、不同的数据。

excel如何进行两列数据比对?
1、首先分别在“sheet1和sheet2”输入数据内容。2、在sheet1需要录入比对结果的空白C2单元格上输入:=IF(COUNTIF( 。3、切换到Sheet2中需要查询的单元列位置并选中整列。4、在Sheet1中,在公式后面输入英文字符下的逗号后选择A2单元格,公式变为:=IF(COUNTIF(Sheet2!A:A,Sheet1!A2 。5、...

Excel表格两列数据如何进行比对excel表格两列数据如何进行比对计算
1、选中两列数据,同时按下“Ctrl”键和“\/”键,即可筛选出第二列数据和第一列不同的单元格,然后给它们填充不同的颜色即可。2、输入公式“=B2=C2”,然后向下填充公式到其他单元格,这样公式返回结果“FALSE”的表示左右两列数据不相同,返回“TRUE”的表示左右两列数据相同。3、输入公式“=IF(B2...

excel怎么对两列的数据进行比较excel怎么对两列的数据进行比较
1.利用条件格式进行简易比较利用条件格式对二列相同的数据进行比较标注,这是Excel最快捷的功能,只适用于每列的数据中不存在重复的数据。如下表的数据1和数据2二列:选择数列1、数据列2,然后在工具栏按顺序点击菜单:【开始】、【条件格式】、【突出显示单元格规则】、【重复值】打开重复值对话窗口,...

如何快速比对Eexcel表格中这两列内容的不同
1、打开需要比较两列数据是否相同的excel表。2、选择一个单元格来放置判断结果。3、在此单元格中输入相等的数字=。。4、选择第一列中的比较数据。5、再次输入一个相等号。6、在第二列中选择相应单元格的数据,然后按回车键。7、将光标放在第一个判断值单元格的右下角,当光标变为十字时向下拖动。...

数据比对怎么操作excel
),用于根据条件返回不同的结果,如=IF(A1=B1, "匹配", "不匹配")。三、数据透视表法 1. 选中数据区域,点击“插入”选项卡,选择“数据透视表”。2. 选择放置位置,点击“确定”。3. 在数据透视表字段中,拖动相应的字段到行、列或值区域进行比较。以上方法均可根据实际需求灵活选择使用。

Excel中如何比对两列数据excel中如何比对两列数据是否一致
使用函数:可以使用Excel提供的函数来对比两列数据。例如,可以使用IF函数来判断两列数据是否相等。在C列中输入=IF(A1=B1,"相等","不相等"),然后将公式拖动填充到其他单元格即可。使用筛选功能:选择要对比的两列数据,点击Excel的菜单栏中的"数据"选项卡,然后点击"筛选"。在筛选下拉菜单中选择"自...

相似回答