![最后的公式查询](https://linux22.com/image/1505213/%E6%9C%80%E5%90%8E%E7%9A%84%E5%85%AC%E5%BC%8F%E6%9F%A5%E8%AF%A2.png)
我需要一些帮助来完成这个公式:
=IF(ISERROR(MATCH("*"&C2&"*",B:B,0)),"False","True")
我有一个地址列表,其中一些地址在一个单元格中有多个地址,很多地址在末尾包含邮政编码。我有一个单独的邮政编码列表,我使用通配符函数对其进行了搜索。因此,我可以知道在我的列表中的某个地方是否有第一个列表中匹配的邮政编码。然后我必须将唯一引用(A 列)与我的邮政编码列表进行匹配。这是示例数据(我使用 - 分隔了列):
LA77648 - 22 Dane Street, Burnley (BB10 1AB) - BB10 4QL - True
LA80291 - 74 Burns Street, Burnley (BB12 0AJ) - BB10 3EZ - False
LA81235 - 76 Westgate, Burnley (BB11 1RY) - BB12 8HY - False
LA87469 - 17 Branch Road, Burnley (BB11 3AT) - BB11 5HT - False
这与我想要的非常接近,但我需要在 True/False 之后再添加一列来复制相关的匹配单元格。然后我需要下一列来显示 A 列中与 B 列中匹配单元格匹配的单元格。我尝试了 Index、VLookup、Matches、Formatting 以及我能想到的所有其他方法。
这是我需要的一个示例(手动完成):
BB11 3JA - True - 2 St Stephens Street, Burnley (BB11 3JA) - LA123865
BB12 0NL - True - 4 Cairo Street, Burnley (BB12 0NL) - LA297035
答案1
尝试:
=IF(ISERROR(MATCH("*"&C2&"*",B:B,0)),"False",INDEX(B:B,MATCH("*"&C2&"*",B:B,0)))
在 D 列中:
=IF(ISERROR(MATCH("*"&C2&"*",B:B,0)),"False",INDEX(A:A,MATCH("*"&C2&"*",B:B,0)))
在 E 列中。
这将使用原始匹配公式中找到的行号从其他列中提取相关数据。
答案2
您可以删除所需的 true 列,或者仅基于 true 的结果
=IFERROR(INDIRECT("B" & (MATCH("*"&C4&"*",B:B,0))),"")
=IFERROR(INDIRECT("A" & (MATCH("*"&C4&"*",B:B,0))),"")