我有两个 Microsoft Excel 电子表格。Book1.xlsx 和 Book2.xlsx 两个文件中都有 8 列。
我需要将所有列相互比较并获得“匹配”或“不匹配”之类的输出。
答案1
例如columns A:H
,两张表 中的数据范围Book2
也具有相同或更多数量的数据行,那么book1
。
在单元格(第一行有数据)中插入公式Book2.xlsx
:Book1.xlsx
I2
=A2&B2&C2&D2&E2&F2&G2&H2
在Book2.xlsx
单元J2
格中插入公式:
=IF(ISERROR(VLOOKUP(I2;[Book1.xlsx]yourSheetName!$I:$I;1;FALSE));"unmatch";"match")
用公式填充两个工作表中的单元格。
答案2
此方法要求您将两个工作簿合并为一个工作簿(可以使用不同的工作表)!我的意思是将工作簿 2 中的整个工作表复制到工作簿 1 的 Sheet2 中。
然后方法是简单地CONCATENATE
对两个表的每个单元格使用SUMIF
考虑一下我的数据,它代表了您所拥有的内容。工作簿 1 是前 3 行。我已将工作表 2 复制到下面(从第 9 行开始)。每个表的中间行是不匹配的行。
在 G1 中,我添加了以下代码
=CONCATENATE(A1,B1,C1,D1,E1,F1)
我把它全部抄下来了
现在我们可以简单比较哪些行匹配。对于最后 3 行,我添加了
=COUNTIF(G$1:G$3, G9)
最后,包装一个 IF 语句
=IF(COUNTIF(G$1:G$3, G9)>0, "Matched", "Unmatched")
您可能想要或不想要该 if 语句。SUMIF 将计算所有出现次数,这意味着它将显示是否存在 1、2、3、4 等匹配项。if 语句将仅显示至少存在 1 个匹配项。