Excel技术问询:编写A列匹配G、H列的Yes/No判断公式
解决Excel跨列匹配判断问题
嘿,我来帮你搞定这个公式问题~你的思路是对的,但原来的写法有两个小问题导致公式失效:
MATCH函数不能用|来合并多个查找区域,这不是Excel里的正确语法;- 当
MATCH找不到匹配值时会返回#N/A错误,直接把它放进OR里会让整个公式报错,而不是返回预期的判断结果。
给你两个靠谱的解决方案:
方案1:用COUNTIF统计匹配次数(最简单直观)
这个方法通过统计目标值在G、H列的出现次数,只要次数大于0就说明存在:
=IF(COUNTIF($G:$G,A2)+COUNTIF($H:$H,A2)>0,"Yes","No")
- 原理:
COUNTIF($G:$G,A2)会返回A2在G列出现的次数,同理H列也是; - 两者相加后如果大于0,就证明A2在其中一列存在,返回
Yes,否则返回No。
方案2:修正MATCH+OR的写法(保留你的原始思路)
如果想沿用MATCH的思路,需要用ISNUMBER来捕获MATCH的有效结果(找到匹配时MATCH会返回数字型的位置):
=IF(OR(ISNUMBER(MATCH(A2,$G:$G,0)),ISNUMBER(MATCH(A2,$H:$H,0))),"Yes","No")
- 原理:
ISNUMBER(MATCH(...))会把找到匹配的情况转为TRUE,找不到的情况转为FALSE; OR函数只要其中一个条件为TRUE,就会返回TRUE,最终输出Yes。
这两个公式都能完美解决你的需求,选哪个就看你习惯哪种写法啦~
内容的提问来源于stack exchange,提问作者Manish Mukherjee
相关产品推荐
相关产品推荐

