我有两个列表,列表1和列表2.两个列表都有两列,列A和列B,列A(ID)& B(值)中的值彼此对应。我需要将这两个列表与其他列表进行比较,并在发生不匹配时找到它们。匹配对方的两个列表
我想要做的是创建第三列C列,以说明这两个列表之间是否存在匹配或不匹配,基本上说明一个列表中的ID是否在另一个列表中具有不同的值,例如:
匹配是:列表1:列A = tom,列B = 5。列表2:列A = tom,列B = 5。
不匹配是:列表1:列A = tom,列B = 5。列表2:列A =汤姆,列B = 2。
问题是,列表2具有包含不同对应值(列B)的列A的重复项。我的规则是:如果两个列表之间存在一个匹配(即使列表中稍后出现不匹配)将其标记为“MATCH”,但如果没有任何匹配的ID(列A),则将其标记作为“MISMATCH”。
这里是我使用的公式,它从列表1将原始ID(栏A),并试图从列表1和表2找到一个匹配或不匹配:
= IF(VLOOKUP(A1, A:B,2,FALSE)= VLOOKUP(A1,C:D,2,FALSE),“MATCH”,“MISMATCH”)
我不能简单地删除重复项,因为它们不只是重复项,单个ID(列A)在一个列表中具有多个值(列B),但是我现在使用的公式不会考虑我想要实施的规则,并且我不知道从哪里开始或如何制作公式这将明白,如果一个ID(列A)包含一个匹配,即使它e是其他不匹配,将其标记为MATCH。我遇到的第二个问题是以某种方式报告,我可以拥有ID(列A),并且在单个列中显示其状态(匹配或不匹配),但没有重复项,我想这与原始问题有关。
对不起,很长的解释,但我很欣赏任何帮助提前。
样本数据:
列表1:
ColumnA | ColumnB
tom | 1
Jon | 2
fred | 3
brad | 4
列表2:
列A | B列
tom | 1
Jon | 5
Jon | 1
fred | 1
fred | 2
fred | 3
brad | 2
(所需的结果)表3:
ColumnA | ColumnB
tom | MATCH *,因为tom在列B中对于两个列表都具有相同的值
Jon | MISMATCH *因为jon在列B中对于两次列表都有不同的值,他的ID显示为
fred | MATCH *因为他在两个列表中至少有一个列B的匹配,即使存在一些不匹配,这也是规则到来的地方
brad |不匹配*由于他在B列在两个列表值不匹配
了示例截屏: Screen shot of example data
也许包含一些可以粘贴到Excel中的小样本数据并显示您的意思? – Kieveli
(另外,请确保你是占领任何前导/尾随空格。) – BruceWayne
我添加了样本数据和期望的结果,我希望这有助于! – Amir