jinwa 发表于 2019-11-28 17:16:21

几个常用的函数案例分享

一、停车计时要求:1、不足一小时按1小时计算;2、超过1小时,不足半小时按半小时计算。
进场时间B4离场时间C4组合公式D4
8:158:30    1.00
8:269:30    1.50
8:5519:20   10.50
9:0321:06   12.50
第一步,计算小时数=(C5-B5)*24第二步,不足半小时按半小时计算公式逻辑:计算有多少个半小时,不足半小时的向上进位=ROUNDUP((C5-B5)*24/0.5,0)*0.5第三步,不足1小时按一小时处理公式逻辑:当小时数小于0.5,向上进位结果为0.5,需要按1小时计=MAX(1,ROUNDUP((C5-B5)*24/0.5,0)*0.5)结果:D5=MAX(1,ROUNDUP((C5-B5)*24/0.5,0)*0.5)案例延伸:如果算加班时的约定(提示:用ROUNDDOWN):1、不足半小时不算加班时,比如加班29分钟加班时为0;2、超过半小时的,不足半小时的依然不算加班时,比如加班59分钟,加班时按0.5小时算。
二、计算当年出勤月份数要求:1、当年新入员工,如果15号前入职当月计算出勤月,16号及以后入职当月不算出勤月;2、如果累计病事假不超过15天,不扣除出勤月数,如果超过15天(含),扣除一个月出勤。
工号姓名入职日期出勤月数E6病事假/旷工天数请假扣除月数年终奖月数H6
  2012/5/1121012
  2002/5/21266210
  2008/5/31215111
  1997/5/41221111
  2016/5/51245210
  2019/5/58508
  2019/5/167007
C4输入计算的年份第一步、计算当年出勤月数=DATEDIF($D7,DATE($C$4,12,31)+1,"M")第二步、判断入职日时15号前还是之后= IF(DAY($D7)<=15,1,0)第三步、超过12个月的,按12个月算E7=MIN(12,DATEDIF($D7,DATE($C$4,12,31)+1,"M")+IF(DAY($D7)<=15,1,0))第四步、病事假扣除出勤月数G7=ROUNDUP(INT($F7/15)/2,0)第五步、年终奖月份数H7 =$E7-$G7
三、一个公式计算达成率/增长率要求:1、基期有正也有负数,设置统一公式计算达成率和增长率;2、不用IF函数。
项目A62019年度B62018年度C6增减幅度D6
销售收入24,13718,52730.28%
税前利润-855-778-9.90%
权益利润-529-70825.28%
一、计算增长率第一步,用IF函数计算=IF(D7>0,C7/D7-1,1-C7/D7)第二步,推演公式(C7-D7)/D7,当D7为正数,该公式保持现状;如果D7为负数,公式1-C7/D7分子分母同时乘-1,则:1-C7/D7=-1*(D7-C7) /ABS(D7)=(C7-D7)/ABS(D7)所以,无论基期正数或者负数,都可以用公式(C7-D7)/ABS(D7)
项目增减幅度IF公式
销售收入=(C7-D7)/ABS(D7)=IF(D7>0,C7/D7-1,1-C7/D7)
税前利润=(C8-D8)/ABS(D8)=IF(D8>0,C8/D8-1,1-C8/D8)
权益利润=(C9-D9)/ABS(D9)=IF(D9>0,C9/D9-1,1-C9/D9)
第三步,推演达成率达成率在增长率基础上+1即可,所以公式为
项目达成率IF公式
销售收入=1+(C15-D15)/ABS(D15)=IF(D15>0,C15/D15,2-C15/D15)
税前利润=1+(C16-D16)/ABS(D16)=IF(D16>0,C16/D16,2-C16/D16)
权益利润=1+(C17-D17)/ABS(D17)=IF(D17>0,C17/D17,2-C17/D17)
页: [1]
查看完整版本: 几个常用的函数案例分享