我会使用一个索引/匹配的解决方案,而不是一个VLOOKUP。 vLookup适用于简单的任务,但是当你尝试做更复杂的事情时,它通常不会工作。我现在发现它几乎每次都是一个更简单的解决方案(尽管我不确定它在性能上如何比较)。
尝试这样的事情在你的表1单元格D2:
=IFERROR(INDEX(Sheet2!$A$2:$F$4,MATCH(Sheet1!A2,Sheet2!$A2:$A4,0),4),Sheet1!A2)
这将完成开始与匹配部分:
它会检查列表中Sheet2的A2:A4的比赛与Sheet1单元格A2中的字符串相同。如果发现它,它将返回一个行号,如果没有,它将返回一个错误。
接下来,INDEX将第二个表作为数据源,并使用匹配和第四列(它是D列)中确定的行号,并返回该值。如果Match返回一个错误,这也会返回一个错误。
因此,我们使用IFERROR来捕获表1中MasterKey不存在的情况。在这种情况下,我假设您只想保留表1中的MasterKey,但您可以更改对任何你喜欢的事物。
如果可行,只需将公式从Sheet1!D2下拉到Sheet1!D4。另外,如果您的Table2比您显示的大得多,您需要调整索引和匹配输入以引用正确的范围大小。请记住使用“$”,因为它们会阻止公式在您拖动它时更改这些单元格。
为什么它会返回LondonItaly而不是London1Italy? –
我正在尝试使用if和vlookup语句。我认为它返回了错误的值,因为逻辑错误是不正确的。 –
你的问题不清楚。列B和C有什么用处? –