我只是想知道在Excel中是否有一种简单的方法来完成以下任务:
在我的Excel电子表格中,我有两个标签。一个选项卡表示一个数据库,另一个选项卡表示不同的数据库。我有一列数据,从我的第一个数据库(选项卡)长度超过1500行,如下所示:
在另一个标签中,我有另一列与上面的列类似。我的目标是能够将上面的列与单独选项卡中的其他列进行比较,并搜索重复的值。
因此,例如上面列中的第一个代码是00064.它将在单独的选项卡中搜索代码00064的指定列。如果找到它,我需要收到警报或以某种方式记录它。然后它将转到下一个代码00368,并为该列中的每个单元重复该过程。我希望这是有道理的。如果您有任何问题需要进一步澄清,请随时提出。
我希望的结果是去除重复值,但我不知道如何解决这个问题,因为由于我的列的长度,手动比较需要相当长的时间。如果有一个可以实现这一目标的宏,它将使我的生活变得更加容易。
我非常感谢能提供任何帮助。
谢谢!
-Dave
答案 0 :(得分:2)
这不需要使用宏。我会使用VLOOKUP公式。如果在列之间找到完全匹配,则它将返回列值。如果未找到匹配,则单元格将读为#N / A.
将Sheet1上的单元格A1与Sheet2上的列A进行比较的公式示例如下所示:
=VLOOKUP(A1,Sheet2!A:A,1,)
Here是有关如何使用此公式的文档。
答案 1 :(得分:2)
这里不需要VBA。在第一个标签的第二列(B1)的第一个单元格中,使用countif
公式:
=countif(tab2!A:A, A1)
将此公式复制下来,使其位于列A
中每个已填充的单元格旁边。这将返回Tab2中第一个选项卡中等于A1的记录数。寻找任何东西> 0找到匹配的东西,或者> 2表示重复。
您可以使用if语句(例如
)扩展它=if(countif(tab2!A:A, A1)>2, "Duplicate", countif(tab2!A:A, A1)=1, "Only one Match", "No Match"))