COUNTIF函数匹配主列表仅同一行返回匹配结果问题求助
问题根因
你写的公式里COUNTIF的两个参数顺序颠倒了,这是出现异常的核心原因。COUNTIF的标准语法为:COUNTIF(待检索的单元格范围, 匹配规则)
你当前的写法COUNTIF(E2, "*"&$D$2:$D$161&"*"),相当于把单个单元格E2作为检索范围,逐行去匹配D列对应行的单元格内容,自然只有当前行的D列值符合包含关系时才会返回匹配结果,无法覆盖$D$2:$D$161的全范围检索需求。
修正方案
- 365/2021及以上版本Excel(支持动态数组):直接调换
COUNTIF的参数顺序即可,输入后回车就会正常计算全范围匹配结果
修正后公式:=IF(OR(COUNTIF($D$2:$D$161, "*"&E2&"*")), "YES", "NO") - 旧版Excel(不支持动态数组):使用上面的修正公式后,需要按下
Ctrl+Shift+Enter组合键确认,将公式转为数组公式才能正常计算。 - 免数组回车的兼容写法:如果不想手动触发数组计算,可以改用
SUMPRODUCT实现相同逻辑,所有Excel版本通用:=IF(SUMPRODUCT(--(COUNTIF($D$2:$D$161, "*"&E2&"*")>0)), "YES", "NO")
内容的提问来源于stack exchange,提问作者Sou
相关产品推荐
相关产品推荐

