excel中,如何利用函数对5个单元格中不为空的那个单元格里的值进行公式计算?

如下图,每个人的工作都有三个大类,每类都有权重,每个类别个又有五个等级。这五个等级任选一个,每个类别下的五个等级没有任何关系。如何计算最终得分?除了用IF,其他简洁一点的公式有吗?如张三得分=等级得分*等级系数*KPI权重+等级得分*等级系数*重点工作权重+等级得分*等级系数*工作态度权重=80*3*50%+90*2*30%+70*1*20%=188分。(等级系数,就是等级后面的数字,如难度等级1,系数为1)如何编写公式,然后下拉填充,所有的数都自动出来?
或者简化一下,不用乘以难度等级系数。直接乘以权重也可以。

Q3单元格写公式:
=SUMPRODUCT((B3:P3)*({1,2,3,4,5,1,2,3,4,5,1,2,3,4,5})*({0.5,0.5,0.5,0.5,0.5,0.3,0.3,0.3,0.3,0.3,0.2,0.2,0.2,0.2,0.2}))
还可进一步简化为:
=SUMPRODUCT((B3:F3*50%+G3:K3*30%+L3:P3*20%)*{1,2,3,4,5})
然后下拉填充公式即可。
注:上述公式有一个好处,在权重指标下的难度系数的得分可以有几个,例如张三,他在KPI权重下,难度系数3为50,、难度系统4为30。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-03-07

在不使用if语句的情况下,利用excel的规则,使用最大数9E+307的方式进行末端查询。

如题:

张三=lookup(9e+307,b3:f3)*80*3*50%+lookup(9e+307,g3:k3)*90*2*30%+lookup(9e+307,l3:p3)*70*1*20%

因为在本题中每个区域人员都只会涉及到一个数字,所以使用这种方式查询区域最后一个数字的方式进行查询。

当然,还有可能设计到多数字,或者更复杂的计算方式。

那么利用sum将区域内数字进行相加也是一个不错的方式:

如下:

=sum(sum(b3:f3)*80*3*50%,sum(g3:k3)*90*2*30%,sum(l3:p3)*70*1*20%)

相对上一个公式,这个公式更容易被理解,就是求值的和。

追问

第一个公式里。80、90、70,这是需要用公式得出的数据,怎么直接放在公式里了呢?

第2个回答  2019-03-07
空白的为0
=B3*权重11+C3*权重12+D3*权重13+E3*权重14+F3*权重15+G3*权重21+H3*权重22+I3*权重23+J3*权重24+K3*权重25+L3*权重31+M3*权重32+N3*权重33+O3*权重34+P3*权重35
第3个回答  2019-03-06
=IF(A1="","",IF(A2<A1,1,IF(A2=A1,5,9)))追问

除了用if,还能用其他的吗?而且A1,A2是,5,9是什么?我的表里,A1是类别,A2是姓名呀。

本回答被网友采纳
相似回答