首页 > 解决方案 > IF/MATCH 语句在 Excel 上被视为 FALSE

问题描述

在此处输入图像描述

我坚持使用我正在使用的 IF/MATCH 语句。我在之前的专栏中使用了一个类似的,它确实有效。下次我尝试它时......错误。我已经尝试重写它但没有成功。有人对此有一些反馈吗?

我正在提供一个包含先前所述问题的工作表

提前致谢

这个抛出:FALSE

=IF(MATCH(1,BASE!A2:Y2,0)=1,"Yes", IF(MATCH(1,BASE!A2:Y2,0)=6,"Yes",IF(MATCH(1,BASE!A2:Y2,0)=11,"Yes",IF(MATCH(1,BASE!A2:Y2,0)=16,"Yes",IF(MATCH(1,BASE!A2:Y2,0)=21,"Yes",IF(MATCH(1,BASE!A2:Y2,0)=25,"Yes"))))))

这个有效

=IF(MATCH(1,BASE!D2:X2,0)=1,"Yes1",IF(MATCH(1,BASE!D2:X2,0)=6,"Yes6",IF(MATCH(1,BASE!D2:X2,0)=11,"Yes11",IF(MATCH(1,BASE!D2:X2,0)=16,"Yes16",IF(MATCH(1,BASE!D2:X2,0)=21,"Yes21")))))

标签: excelif-statementmatchexcel-2010

解决方案


问题是 MATCH 不知道您要每 5 列检查一次,并且将返回提供的范围内的第一个匹配项。这场比赛是找到1inI并返回9。这不是您的选择和IF回报之一FALSE

我们可以使用不同的公式来返回您想要的内容:

=IF(SUMPRODUCT((MOD(COLUMN(A2:Y2)-1,5)=0)*(A2:Y2=1)),"Yes","No")

MOD 确保它落在 1,6,11,16,21 列上,下一个确保其中至少一个是1

在此处输入图像描述


推荐阅读