ZBLOG

excel筛选两列相同数据,excel两列数据相同排序

  

  在Excel中,可以使用VLookUp函数查找重复数据(即重复项)。使用VlookUp函数查找重复数据可以分为几种情况:一列数据有相同的项,另一列数据不同(即一对多),两列数据对应的行相同,两个表的一个或几个字段相同,所有字段(即一行)相同。一对多的情况在前面的《Excel VLookUp函数的使用方法,含逆向查找、一对多查找和近似匹配实例》章已经介绍过了。本文将介绍如何在两列中查找重复数据,在两个表中查找相同数据(即比较两个表中的数据)。   

  

  使用VLookUp函数查找两个表中相同的数据介绍两个例子。一是两个表中只有一列数据有相同的项,二是两个表中所有列(即一行)都相同。   

  

  一、Excel VLookUp函数的操作实例一:查找两列的重复数据   

  

  1.如果要查找两列价格的重复数据。双击单元格C2,将公式=iError (vlookup (B2,$ A $2: $ A $8,1,0),“”)复制到C2,回车返回搜索结果89,表示第二行A列数据与B列数据相同;选中C2单元格,将鼠标移动到C2右下角的填充柄,鼠标变成十字()后,双击左键将两列重复的价格数据全部过滤掉;操作步骤,如图1所示:   

  

     

  

  图1   

  

  提示:如果只需要在对应行的两列中查找重复数据,公式应该改为IFERROR(VLOOKUP(B2,A2,1,0),' ')。   

  

  2、公式=if error(VLOOKUP(B2,$2:$A$8,1,0),' ') 说明:   

  

  a、B2是VLookUp的查找值,是相对引用。如果你把它拖下来,它会变成B3,B4,$A$2是对列和行的绝对引用。如果你把它拖下来,它不会变成A3,A4,而$A$8和$A$2的意思是一样的。   

  

  b,$A$2:$A$8是搜索范围,这意味着从A2到A8搜索B2。拖下来之后,B2变成了B3,B4,B2也是从A2搜索到A8。   

  

  c,1是VLookUp返回的列号,0是精确匹配;当公式为C2时,VLOOKUP(B2,$A$2:$A$8,1,0)的意思是在A2到A8中找到B2(即89)。找到A2后,它返回搜索范围的第一列,即a列中的89。   

  

  d,IfError是一个错误返回函数。如果VLOOKUP(B2,$A$2:$A$8,1,0)返回错误值,则返回空值;否则,它将返回VLOOKUP的返回值(B2,$A$2:$A$8,1,0)。   

  

  提示:$ a $ 2: $ a $ 8也可以用一列表示,即A:A。不过这种方式有两个问题,一个是Excel较低版本不支持,一个是执行速度可能会慢一点。   

  

  二。Excel VLookUp函数操作示例二:查找两个表中相同的数据(两个表的数据比较)。如果找到相同数据的两个表分别在文档“水果表1.xlsx”和“水果表2.xlsx”中,则该表的名称为“水果销售表1”和“水果销售表2”。以下是找到它们的具体方法:   

  

  (一)只要求一列有数据相同   

  

  1.在“水果表1.xlsx”窗口中,选择单元格E2并输入1。将鼠标移动到E2右下角的填充柄。鼠标变为十字()后,双击左键,有数据的行的最后一列会填充1;选择视图选项卡,点击切换窗口,在弹出菜单中选择果桌2,切换到果桌2窗口;双击单元格E2,将公式=iError (vlookup (A2,水果表1.xlsx水果销售表!一个$2:E$7,5,0),'')复制到E2,回车,返回空值。选择E2,将鼠标移动到E2右下角的填充柄,鼠标变成十字后,双击左键返回所有行的搜索结果,其中1的表示与水果表1中表的对应行重复;操作流程步骤,如图2所示:   

  

     

  

  图2   

  

  2、说明:   

  

  A.在水果销售表1的E列中加1,以标记水果销售表2的E列中的数据相同,即如果两个表的数据相同,则在水果销售表2的E列中显示1。   

  

  b,formula=IFERROR(VLOOKUP(A2,水果表1.xlsx水果销售表1!在A$2:E$7,5,0),“”),搜索值为A2(水果销售表2的A2),搜索范围为水果表1.xlsx水果销售表1!A$2:E$7,因为是“水果表2.xlsx”文档中的工作表查找“水果表1.xlsx”文档的工作表,所以在搜索范围前要加上文档名和工作表,即水果表1.xlsx水果销售表1,工作表和引用单元格之间要加半角。   

叹号(!);5 是返回列号,即返回“水果销量表1”的第 5 列,也就返回“重复标记”列。

  

提示:如果在“水果销量表2”的 E2 中输入公式,嫌输入文档名和工作表名麻烦,输入 =IFERROR(VLOOKUP(A2, 后,切换到“水果表1.xlsx”窗口,单击一下工作表名称“水果销量表1”,就会自动输入 <水果表1.xlsx>水果销量表1!,再框选 A2:A7,就会自动输入 $A$2:$A$7,切换回“水果表2.xlsx”后,公式已经变为 =IFERROR(VLOOKUP(A2,<水果表1.xlsx>水果销量表1!<水果表1.xlsx>水果销量表1!$A$2:$A$7,再输入其它参数即可。

  

(二)要求所有列都有数据相同,即一行数据都相同

  

1、假如要求两个工作表一行数据完全相同才视为相同。同样在“水果销量表1”最一列添加 1 作为重复标记;然后切换到“水果销量表2”,双击 E2 单元格,把公式 =IFERROR(VLOOKUP(A2&B2&C2&D2,IF({0,1},<水果表1.xlsx>水果销量表1!E$2:E$7,<水果表1.xlsx>水果销量表1!A$2:A$7&B$2:B$7&C$2:C$7&D$2:D$7),2,0),"") 复制到 E2,按回车,返回空值,接着用双击 E2 单元格填充柄的方法返回剩余的查找结果,显示 1 的表示该行数据相同;操作过程步骤,如图3所示:

  

  

图3

  

2、公式说明:

  

=IFERROR(VLOOKUP(A2&B2&C2&D2,IF({0,1},<水果表1.xlsx>水果销量表1!E$2:E$7,<水果表1.xlsx>水果销量表1!A$2:A$7&B$2:B$7&C$2:C$7&D$2:D$7),2,0),"")

  

A、A2&B2&C2&D2 为查找值,是把 A2、B2、C2、D2 四个单元格的数据连结在一起,即“香蕉浆果4.51258”。

  

B、IF({0,1},<水果表1.xlsx>水果销量表1!E$2:E$7,<水果表1.xlsx>水果销量表1!A$2:A$7&B$2:B$7&C$2:C$7&D$2:D$7) 的作用是把“水果销量表1”的查找范围 A 列到 D 列每行的数据连结为一列和把返回列 E 列作为独立的一列;如果不明白,请参考《Excel VLookUp怎么用If或If{0,1}实现两个或三个条件的多条件查找》一文,里面有详解。

  

提示:如果只要求两个表两列或三列有相同数据,例如只要求 A、B 和 C 列有相同数据,只需把 A2、B2 和 C2 连续起来,即 A2&B2&C2。