如果某个范围内的任何文本与单元格中的文本匹配,则输出匹配的文本

时间:2015-05-31 17:55:31

标签: excel excel-formula match

我需要查看C1:D3范围内的任何文本是否与A1中的任何文本匹配。如果是,则将该文本输出到B1。如果没有,则在B1中不输出任何内容。

使用下面列表中的数据,当查找范围在一列C1:C3中时,我已经成功使用了这个数组公式,但是当从C1中的两列扩展查找时,无法使它工作:D3

搜索一列时有效:C栏

{=IFERROR(INDEX($C$1:$C$3,MATCH(1,COUNTIF(A1,"*"&$C$1:$C$3&"*"),0)),"")}

将其更改为搜索两列 - 不起作用:列C& d

{=IFERROR(INDEX($C$1:$D$3,MATCH(1,COUNTIF(A1,"*"&$C$1:$D$3&"*"),0)),"")}

数据

  • C1,2,3包含:纽约,洛杉矶,圣地亚哥
  • D1,2,3包含:toronto,jacksonville,nyc
  • A1,2,3,4,5,6包含:出生证明纽约,洛杉矶死亡证明书,结婚证书,圣地亚哥离婚证书,结婚证书,离婚杰克逊维尔
  • B1包含公式,然后将其向下拖动到B6

任何想法如何做到这一点?

1 个答案:

答案 0 :(得分:1)

这可以通过嵌套IFERROR functions来将查找传递到第二列,如果第一列没有产生匹配但我怀疑你的样本数据没有充分描述C1:D3的范围。对于您的样本数据,这将通过B1中的以下数组公式来完成。

 =IFERROR(INDEX($C$1:$C$3,MATCH(1,COUNTIF(A1,"*"&$C$1:$C$3&"*"),0)),IFERROR(INDEX($D$1:$D$3,MATCH(1,COUNTIF(A1,"*"&$D$1:$D$3&"*"),0)),""))

需要使用 Ctrl + Shift + Enter↵来最终确定数组公式。一旦输入正确,您可以根据需要填写。

Two column lookup with IFERROR

如果C1:D3的范围与您描述的显着不同,其他方法可能更合适;如果实际上有多列而不是行,则包括将查找转置为水平。