我有一个公式我需要一些帮助。我想要实现的是检查单元格A中的文本是否出现在单元格C列中的任何位置,如果文本确实出现,那么我希望excel打印匹配的单元格C中的数据。 到目前为止我所拥有的是什么;
= IF(ISERROR(MATCH(" "&安培; A3&安培;" ",$ C $ 2:$ C $ 8,0)), "",A3)
现在这个公式做了我想要的但它打印了Cell A的内容,它不仅仅是将它更改为Cell C的情况,因为它不会打印匹配的单元格。
我确信这是一件简单的事情,而且事先得到你的答复。
答案 0 :(得分:1)
您需要使用INDEX来获取C列中匹配单元格的内容。
如果您有最新版本的Excel(2007年以后),您可以使用IFERROR检查匹配是否成功: -
=IFERROR(INDEX($C$2:$C$8,MATCH("*"&A3&"*",$C$2:$C$8,0)),"")
如果没有,请使用ISERROR,然后使用INDEX功能: -
=IF(ISERROR(MATCH("*"&A3&"*",$C$2:$C$8,0)),"",INDEX($C$2:$C$8,MATCH("*"&A3&"*",$C$2:$C$8,0)))
您也可以使用VLOOKUP: -
=IFERROR(VLOOKUP("*"&A3&"*",$C$2:$C$8,1,FALSE),"")
或
=IF(ISERROR(VLOOKUP("*"&A3&"*",$C$2:$C$8,1,FALSE)),"",VLOOKUP("*"&A3&"*",$C$2:$C$8,1,FALSE))
如果C2:C8中的字符串长度超过256个字符,则可以使用建议的方法Here。使用FIND进行部分匹配,这将给出公式: -
=IFERROR(INDEX($C$2:$C$8,MATCH(TRUE,ISNUMBER(FIND(A3,$C$2:$C$8)),0)),"")
必须使用Ctrl-Shift-Enter输入数组公式。
如果您不希望它区分大小写,请使用SEARCH而不是FIND。和以前一样,您也可以使用IF(ISERROR ...以实现向后兼容性。