我在一个表中使用一个值作为搜索条件,希望使用在另一个表的一列中匹配的所有行。我现在的公式给出了#VALUE!
错误:
{=FIND([@Col1],Table2[Col3])}
[编辑]:
我的实际公式更像是:
{=IF(NOT(ISERROR(FIND([@Col1],Table2[Col3]))),DO WORK ON THOSE ROWS,0)}
[/编辑]
这给了我#VALUE!
中每个条目的Table2[Col3]
错误,除非搜索条件出现在Table2[Col3]
的第一个单元格中,然后我正确返回位置1(它总是在单元格的开头)。
我需要公式检查Table2[Col3]
中的所有单元格(而不是上面只检查第一个单元格的公式)得到我的标准的结果位置,然后继续使用该数组作为冗长的SUMPRODUCT
的一部分。
任何人都可以发现我明显(或不那么明显,有希望)的错误吗?
=IFERROR(MATCH([@col1],Table2[col3],0),"")
应该有所期望的效果。如果您正在寻找布尔值,请使用
IF(ISNUMBER(MATCH([@col1],Table2[col3],0)),"True","False")
编辑:
如果您在单元格中的任何位置查找信息,请使用通配符,最常见的是任何数字的*
和任何SINGLE字符的?
:
=IFERROR(MATCH("*"&[@col1]&"*",Table2[col3],0),"")
或供您使用:
=IF(ISNUMBER(MATCH("*"&[@col1]&"*",Table2[col3],0)),{DO WORK ON THOSE ROWS},0)