根据共同ID查找匹配的cell数据
Looking up matching cell data based on a common ID
首先让我说我对 Excel 公式非常不熟悉。
我只有一个基础知识,完全没有用过。
我的 Excel 工作表中有两组不同的列,每组都有一个 ID 和一个名称。
现在我想使用公式生成一个字符串,其中包含来自两个数据集的匹配单元格值,其中 ID 匹配。
由于第二个数据集不一定具有与第一个数据集的每个项目匹配的信息,因此我只想为第二个数据集的每个项目生成字符串。
下面是一个简化示例的屏幕截图,详细说明了我要实现的目标:
我查看了 VLOOKUP、INDEX、MATCH,但我不确定是否或如何通过这些获得我想要的解决方案。
如果有人能帮我指出正确的方向,我将不胜感激。
我会在集合 2 中添加另一列,这是一个 vlookup 以查看是否在集合 1 中找到了 ID。
F 列的公式:
Cell F2: =IFERROR(VLOOKUP(D2,A:B,2,FALSE),"not found")
那么,这是 G 列的公式:
Cell G2: =IF(F2="not found","Record "&D2&" not found in first set",IF(E2<>F2,"Record "&D2&" changes from "&F2&" to "&E2,"Record " &D2& " does not change"))
这满足给定的要求,但假定如果 ID 存在,它已更改名称。
公式是单元格 G2 是
=IF(ISERROR(MATCH(D2,$A:$A,0)),"","Record " & D2 & " changes from " & INDEX($B:$B,MATCH(D2,$A:$A,0))) & " to " & E2
这应该可以满足您的要求。如果 table 1 和 table 2 中的记录相同,则 returns Value unchanged
,如果记录仅存在于 table 2 而不存在于 table 1、它returns Value not in original table
。如果您需要更改此行为,请告诉我。
=IFNA(IF(E2=INDEX($B:$B,MATCH(D2,$A:$A,0)),"Value unchanged", "Record "&D2&" changed from "&E2&" to "&INDEX($B:$B,MATCH(D2,$A:$A,0))),"Value not in original table")
首先让我说我对 Excel 公式非常不熟悉。 我只有一个基础知识,完全没有用过。
我的 Excel 工作表中有两组不同的列,每组都有一个 ID 和一个名称。 现在我想使用公式生成一个字符串,其中包含来自两个数据集的匹配单元格值,其中 ID 匹配。
由于第二个数据集不一定具有与第一个数据集的每个项目匹配的信息,因此我只想为第二个数据集的每个项目生成字符串。
下面是一个简化示例的屏幕截图,详细说明了我要实现的目标:
我查看了 VLOOKUP、INDEX、MATCH,但我不确定是否或如何通过这些获得我想要的解决方案。
如果有人能帮我指出正确的方向,我将不胜感激。
我会在集合 2 中添加另一列,这是一个 vlookup 以查看是否在集合 1 中找到了 ID。
F 列的公式:
Cell F2: =IFERROR(VLOOKUP(D2,A:B,2,FALSE),"not found")
那么,这是 G 列的公式:
Cell G2: =IF(F2="not found","Record "&D2&" not found in first set",IF(E2<>F2,"Record "&D2&" changes from "&F2&" to "&E2,"Record " &D2& " does not change"))
这满足给定的要求,但假定如果 ID 存在,它已更改名称。
公式是单元格 G2 是
=IF(ISERROR(MATCH(D2,$A:$A,0)),"","Record " & D2 & " changes from " & INDEX($B:$B,MATCH(D2,$A:$A,0))) & " to " & E2
这应该可以满足您的要求。如果 table 1 和 table 2 中的记录相同,则 returns Value unchanged
,如果记录仅存在于 table 2 而不存在于 table 1、它returns Value not in original table
。如果您需要更改此行为,请告诉我。
=IFNA(IF(E2=INDEX($B:$B,MATCH(D2,$A:$A,0)),"Value unchanged", "Record "&D2&" changed from "&E2&" to "&INDEX($B:$B,MATCH(D2,$A:$A,0))),"Value not in original table")