我目前有一个Excel公式,可以搜索单元格中包含的逗号分隔的列表字符串,并确定该单元格是否包含另一个确切的字符串作为一个元素。寻找替代MAX(COUNTIF(Range,Criteria)),可以忽略空格
其计算公式为:MAX(COUNTIF(A1,{"*,";""}&B1&{"",",*"}))
公式行为,正确,就像这样:
A B Result Comment
1,2,3 1 1 1 exists in 1,2,3
1,2,3 2 1 2 exists in 1,2,3
A,B,C C 1 C exists in A,B,C
A,B,C Z 0 Z does not exist in A,B,C
123,456,789 5 0 5 does not exist in 123,456,789
我这个遇到的问题是,该公式只要空格引入失败。由于COUNTIF
必须通过一定范围,因为它是第一个参数,我不能简单地用:
SUBSTITUTE(A1," ","")
我也愿意,如果可能的话,不使用任何外来的细胞保持空白消除串。
在vba中编写函数可以非常简单地完成此任务,但由于此电子表格将分发给最终用户(可能会无意中禁用宏),因此这不是理想的解决方案。
有没有人知道上面提出的任何替代公式?
这非常适合我的用例,但可能不适合所有情况(正如您指出的那样,所需字符串包含空格的情况)。我会进一步考虑这点(因为可重用是我的最终目标)。无论如何,你对我表示感谢。 –