要理解你那段函数,首先得了解下面三个主要的函数:(PS:打字太累了,
IF函数的语法结构:IF(条件,结果1,结果2).
如=IF(A,B,C)”,意思是“如果 A,那么 B,否则 C
=DATEDIF(起始日期,终结日期,参数)起始日期就、终结日期可以为任意合法的日期格式(建议不要用“.”来作为分隔符),或者单元格数值.
如=DATEDIF("2005-5-3","2008-11-28","Y") 返回2008-5-3到2008-11-28之间的年数, 将最后一个参数改成"M",返回月数;改成"D"返回天数 .
=INT()为向下取整为最接近的整数.
比如:INT(3.2)=3 INT(3.9)=3
=IF(DATEDIF(E64,F64,"D")/365<1,INT(DATEDIF(E64,F64,"D")/365*5),IF(DATEDIF(E64,F64,"D")/365<10,5,IF(DATEDIF(E64,F64,"D")/365<20,10,20)))
那么整段用IF分成三层,意思就是
=IF(条件,结果1,结果2)
条件:DATEDIF(E64,F64,"D")/365<1如上就是说判断该员工来公司是否小于1年
结果1:INT(DATEDIF(E64,F64,"D")/365*5)该员工来的年数向下取整,如不满2年按2年算
结果2:IF(DATEDIF(E64,F64,"D")/365<10,5,IF(DATEDIF(E64,F64,"D")/365<20,10,20)))
这段又用IF 还是分成三层
条件:DATEDIF(E64,F64,"D")/365<10如上就是说判断该员工来公司是否小于10年
结果1:5大于1年,小于10年的年休是5天
结果2:IF(DATEDIF(E64,F64,"D")/365<20,10,20))
这段又用IF 还是分成三层
条件:DATEDIF(E64,F64,"D")/365<10如上就是说判断该员工来公司是否小于20年
结果1:10,就是大于10年,小于20年的年休是10
结果2:20,就是大于20年的,年休是20天