Excel在列中找到部分匹配

时间:2019-05-03 11:50:11

标签: excel excel-formula

我正在尝试编写一个公式,如果D3的内容与同一列中除自身之外的任何内容都部分匹配,则它将向单元格G3返回正值。即

红色-没有匹配项 蓝色-部分比赛 浅蓝色-没有匹配项

没有匹配项,因为“红色”与其他任何结果都不是部分匹配,部分匹配是因为“蓝色”是“浅蓝色”的部分匹配。

我正在使用当前公式,但是当我期望它返回true时,它将返回false

=IF(ISNUMBER(SEARCH(D3,$D$1:D2,D4:$D$10000)),"Yes","No")

我的原始公式:

enter image description here

建议的公式:

enter image description here

1 个答案:

答案 0 :(得分:1)

将返回正值的公式太宽。但是我做了一个计算您的部分匹配的公式。如果公式的结果为0,则表示不存在匹配项或部分匹配项:

enter image description here

我使用的公式:

=COUNTIFS($A$1:$A$3;"*" &A1&"*")-1

我添加了-1,因为使用此公式,您将始终获得至少1个匹配项(要排除的单元格)。因此,使用-1可以确保您获得其他部分匹配。

您可以将其与普通IF结合使用。如果此公式的结果为0,则表示不存在部分匹配项(当然,不包括同一行中的部分匹配项)。如果不为零,则表示存在部分匹配项。然后做任何需要做的事情以获取正值

更新:现在,我明白了您对正值的理解。如我所说,您可以将上述公式与IF结合使用。尝试这样的事情:

=IF(COUNTIFS($A$1:$A$3;"*" &A1&"*")-1=0;"NO";"YES")

或尝试:

=IF(COUNTIFS($A$1:$A$3;"*" &A1&"*")-1=0;FALSE;TRUE)