Excle公式简化

来源:百度知道 编辑:UC知道 时间:2024/06/23 13:08:58
我要做一个计算考勤的公式,假设有一个人上了一周的班,有些天的工作时间超过8小时,超出的部分需要算加班,工时应该乘以1.5倍,有些天的工作时间没有超过8小时,只作为正常的上班时间.现在要求出他一周的加班时间.我设的公式如下,但感觉太麻烦了,能不能简化一下,或者用其它的计算公式?或者有更好的办法算出一月的平时加班工时,双休加班工时?
=(IF(MOD(S4,8)>0,S4-8, )+IF(MOD(T4,8)>0,T4-8, )+IF(MOD(U4,8)>0,U4-8, )+IF(MOD(V4,8)>0,V4-8, )+IF(MOD(W4,8)>0,W4-8, ))*1.5
答案正确,但只是算出了一个星期的,如果要把四个星期的一起算,那么是直接用公式相加还是另外有简单的公式,需要考虑是每两周之前有两天的双休日。麻烦了。
哪位高人按图中的格式把整个月的平时加班(上班时间大于8小时)的公式设置出来,最好是全年都能用,即星期六,星期天的位置变动对公式没有影响。加30分!
如果我把一个月表格的全部做出来,那么图像就太长了,不符合图片的要求,高手可以自己做嘛,第一行是星期,第二行是日期,第三行是工时,我想求一个计算平时(不包括星期六,星期天)加班的工时(超出8小时以外的部分,不足或是等于8小时的不计)的合计的公式,之前的问题是算了一个星期的,后来用的是简单的公式相加得出了一个月的。我想知道有没有更简单的,特别是星期六,星期天的位置变动对公式没有影响。例如,我计算双休工时合计时,用的是这个公式:=SUMIF($B$1:AF3,"六",B3:AF3)+SUMIF($B$1:AF3,"日",B3:AF3),那么,不管星期六星期天这哪个位置,公式会自己计算星期六和星期天对应的工时合计。80分,加油!

你上面的公式可简化成如下
=(SUMIF(S4:W4,">8")-COUNTIF(S4:W4,">8")*8)*1.5

补充回答:
日常加班工时:
{=SUMPRODUCT(ISNUMBER(FIND(S3:Z3,"一二三四五"))*(S4:Z4>8)*(S4:Z4-8))*1.5}
双休加班工时:
{=SUMPRODUCT(ISNUMBER(FIND(S3:Z3,"六日"))*(S4:Z4))*2}
数组公式,输入时请用Ctrl+Shift+Enter

=COUNTIF(S4:W4,">0")*8+(SUMIF(S4:W4,">=8")-COUNTIF(S4:W4,">=8")*8)*1.5
以上是总时间,取加班:=(SUMIF(S4:W4,">=8")-COUNTIF(S4:W4,">=8")*8)*1.5

没说双休日如何计算?
给出四个星期的表格样式来?

一星期结算工时:
=SUM(IF(S4:W4>8,S4:W4-8,0))*1.5+COUNT(S4:W4)*8
数组公式结束