Excel 公式从 2 个不同的单元格返回任何匹配的字符串

Excel formula to return any matched strings from 2 different cells

提问人:Ryan Dennehy 提问时间:9/25/2023 更新时间:9/25/2023 访问量:43

问:

我想构建一个公式,如果在两个单元格之间找到 1 个或多个匹配项,它将返回 true/false。

两个单元格的格式完全相同,即用分号分隔的值,如果只有一个值存在,则仅用一个单词分隔。两个单元格中的值也将完全相同,即区分大小写。

这是我的公式/尝试,在这种情况下返回 true,但出于某种原因,有些示例在应该为 true 时返回 false。

非常感谢指导。

Image of formula

Excel 匹配

评论

0赞 user11222393 9/25/2023
1.你应该展示一些不起作用的例子。2. 你用“;”而不是“; ”拆分,所以它会在 G4 中寻找“Brocolli”(前面有空格),如果它在字符串的开头,它将是假的。3. 豌豆会在鹰嘴豆中产生假阳性。这是不是预期的结果?
0赞 user11222393 9/25/2023
尝试 =IF(SUM(MAP(TEXTSPLIT(C4,“;“), LAMBDA(z, SUM(N(z=TEXTSPLIT(G4,”;“))))))>0,TRUE)
1赞 Ryan Dennehy 9/25/2023
这非常有效,谢谢。与分号间距有关

答:

1赞 user11222393 9/25/2023 #1

尝试:

=IF(SUM(MAP(TEXTSPLIT(C4,"; "), LAMBDA(z, SUM(N(z=TEXTSPLIT(G4,"; "))))))>0,TRUE)

结果:

enter image description here

或者不要使用,直接离开:IF

=SUM(MAP(TEXTSPLIT(C4,"; "), LAMBDA(z, SUM(N(z=TEXTSPLIT(G4,"; "))))))

要获得匹配计数,请执行以下操作:

enter image description here

1赞 Jos Woolley 9/25/2023 #2

没有的替代方案:LAMBDA

=LET(ζ,TEXTSPLIT(C4&"; "&G4,,"; "),(ROWS(ζ)-ROWS(UNIQUE(ζ,,1)))/2)