如图:看表内涂绿色部份每个人的“开机总数”和”实际机器工时“,公司规定当个人每天的开机总数合计超过4台时则给予相关超过机台奖内的最小工时合计奖。例如表内:黄秋玲开机6台,开机总数超过二台的最小工时数是7.5+3.4=10.9H。请问如何设定函数令到满足以上条件后能自动计算每个人每天的超过固定机台数的工时奖??
自动计算每个人每天的超过固定机台数的工时奖,方法如下:
计划在I28:K33存放统计数据。
I29存放姓名,公式:=UNIQUE(F3:F25)。
J29存放符合条件的时间合计数据,公式如下:=IF(AND(COUNTIF($F$3:$F$25,I33)>4,IF($P$3:$P$25<8,$P$3:$P$25,"")),SUMIFS($P$3:$P$25,$P$3:$P$25,"<8",$F$3:$F$25,I33),"")
公式较长,其实也就是先用IF做两个条件的判断,如果全部符合,就进行合计,不符合,就返回空值。两个条件用AND与函数完成,用英文“,”隔开。
对符合条件的统计是用SUMIFS完成的,参数一是要合计的数据区域。参数二分两部分,参数一是判断条件区域,参数二是条件值。多条件时,按此法排列,用英文逗号隔开。
本例中,先判断开机数大于4台,并且,开机工时小于8,函数表达如下:AND(COUNTIF($F$3:$F$25,I33)>4,IF($P$3:$P$25<8,$P$3:$P$25,""),这样就把机器开机时间范围限制在两个条件之内。
然后,再进行合计,得到结果。