一、计算工龄月数 F8:=IF(DAY($D8)<16,1,0)+DATEDIF($D8,$E8,"M") 函数说明 1、if 函数表达式:=if(logical_test,value_if_true,value_if_false) 用途:如果合同类别没有填时返回空值,有填写合同类别,用函数组合计算流水号。 2、day 函数表达式:=day(serial_number) 用途:将日期中的天取出来。 3、datedif 函数表达式=datedif(start_date,end_date,unit) 用途:计算两个日期之间的整年数参数用"Y"、整月数参数用"M"、天数参数用"D"。 4、嵌套公式说明 如果16号前入职,入职当月算1个月工龄,16号后入职当月不算。
二、根据要求计算工龄工资 G8:=MAX(0,INT($F8/12))*30+MAX(0,MIN(1,INT($F8/12)))*20 函数说明 1、max 函数表达式:=max(number1,number2,...) 用途:提取一组数中的最大值。 2、min 函数表达式=min(number1,number2,...) 用途:从多个数或者一个与区域里找出最小值。 3、int 函数表达式:=int(number) 把数值或者公式计算的结果取整数。 4、嵌套公式说明 MAX(0,INT($F8/12))*30 按当月计算的整年数,每年加30 MAX(0,MIN(1,INT($F8/12)))*20 min函数计算如果超过1年则取1年 max函数计算如果小于一年则当0年算【虽然本案例不会出现负数,为演示min和max限制取值范围,增加max的设置】
三、每年年末计算一次 公式相同,只是每年只是12月31号计算作为次年调整工龄工资的数据。 |