发布网友 发布时间:2022-04-19 21:19
共3个回答
热心网友 时间:2023-06-12 08:35
灞曞紑鍏ㄩ儴热心网友 时间:2023-07-14 19:58
要理解你那段函数,首先得了解下面三个主要的函数:(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天
热心网友 时间:2023-07-14 19:59
其实这个公式的意思是说,F列减去E列得出的天数除以365得出进公司多少年,然后加IF判断,如果进公司十年以内,年休5天,十到二十年年休10天,超过后年休20天追答DATEDIF函数是返回两个日期之间的年\月\日间隔数,后面的D是日期函数DATE的D,DATEDIF(E64,F64,"D")就是返回E64,F64两个日期之间的日期数量,这个数除以365,得出年数。但这个年份可能是小数,比如说1.8年的时候,实际年休是要满整数年才给的,就用INT函数
INT是向下取整,当算出来的年数的值不为整时,比如说1.8年,实际计算时只取整数1,后面的意思呢跟我的函数里面的是一样的,就是当这个取的数值达到多少,返回多少的意思
热心网友 时间:2023-07-14 19:59
就是根据进公司的年数判断年休天数。