首页 > 电脑

我在做表时,一位老师给我编辑的一个单元格的公式,我想请教一下它的逻辑关系?

更新时间2018-03-06 22:01:27

 =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位小数就是结果了。


相关标签:公式

上一篇:thessaloniki说什么语言

下一篇:python中文字符串怎么使用count