Excel嵌套IF(AND)函数编写求助:需实现Valid、Invalid或空白输出
Excel嵌套IF(AND/OR)函数修正方案
原公式的核心错误
- IF函数参数违规:Excel的
IF函数仅支持3个参数(条件、满足结果、不满足结果),你第一个IF错误传入了4个参数,这是直接报错的原因 - OR函数语法错误:
OR的每个参数必须是完整逻辑判断(如[@[Key Populations]]="Preg"),不能直接罗列单元格和值 - 运算符写法错误:
[@Age]=<14是非法格式,正确写法为[@Age]<=14 - 逻辑分层混乱:三种结果的触发条件没有清晰嵌套,导致逻辑冲突
修正后的公式
根据你需求的三种输出(Valid/Invalid/空白),整理逻辑后写出正确公式:
=IF( AND( [@[Key Populations]]<>"Preg"; [@[Key Populations]]<>"BF"; [@Age]>14; P135>='information Sheet'!$AD$2; P135<='information Sheet'!$AE$2 ); "VALID"; IF( AND( OR( [@[Key Populations]]="Preg"; [@[Key Populations]]="BF"; [@Age]<=14 ); P135>='information Sheet'!$AD$2; P135<='information Sheet'!$AE$2 ); ""; "INVALID" ) )
逻辑说明
- 返回"VALID":同时满足「非特殊人群(Preg/BF)」「年龄>14」「P135在AD2-AE2区间内」
- 返回空白:满足「特殊人群/年龄≤14」且「P135在AD2-AE2区间内」
- 返回"INVALID":除上述两种情况外的所有场景
如果需要返回空格而非空文本,将公式中的""替换为" "即可。
内容的提问来源于stack exchange,提问作者Kopano Sehlabo
相关产品推荐
相关产品推荐

