我在做表时,一位老师给我编辑的一个单元格的公式,我想请教一下它的逻辑关系?
=IF($B6=0,"",IFERROR(ROUND((IF(VLOOKUP($C6,辅助表'!$A$2:$F$12,6,0)=1,(i6*0.4+k6*0.1+m6*0.3),(i6*0.2+k6*0.5+m6*0.1))+IF($G6>92,VLOOKUP(ROUNDDOWN($G6,0),辅助表'!$P$3:$Q$12,2,0),0)),1),""))
公式中“辅助表”后面的英文单引号(')应该去掉,“i6*0.4+k6*0.1+m6*0.3”和“i6*0.2+k6*0.5+m6*0.1”两端的括号应该省略(如下粗体所示),这样才对。
=IF($B6=0,"",IFERROR(ROUND((IF(VLOOKUP($C6,辅助表'!$A$2:$F$12,6,0)=1,(i6*0.4+k6*0.1+m6*0.3),(i6*0.2+k6*0.5+m6*0.1))+IF($G6>92,VLOOKUP(ROUNDDOWN($G6,0),辅助表'!$P$3:$Q$12,2,0),0)),1),""))
最后是这样:
=IF($B6=0,"",IFERROR(ROUND((IF(VLOOKUP($C6,辅助表!$A$2:$F$12,6,0)=1,I6*0.4+K6*0.1+M6*0.3,I6*0.2+K6*0.5+M6*0.1)+IF($G6>92,VLOOKUP(ROUNDDOWN($G6,0),辅助表!$P$3:$Q$12,2,0),0)),1),""))
逻辑关系:
1、当B6单元格的值是0(空值也当作0)时,结果是(假)空值。
2、当C6单元格的值在“辅助表”的A2~A12单元格中没有时,结果也是(假)空值。
3、当G6单元格的整数部分大于92的数在“辅助表”的P3~P12单元格中没有时,结果也是(假)空值。
4、以上3种情况都没有时,
(1)被加数
当C6单元格的值在“辅助表”的A2~A12单元格中有,且对应的F2~F12单元格的值是1时,等于表达式i6*0.4+k6*0.1+m6*0.3的值,否则,等于表达式i6*0.2+k6*0.5+m6*0.1的值。
(2)加数
当G6单元格的整数部分大于92的数在“辅助表”的P3~P12单元格中有时,等于对应的Q3~Q12单元格的值。
当G6单元格的整数部分不大于92的数时,等于0。
(3)被加数与加数的和保留1位小数就是结果了。
热门标签: