求助:excel的年假算法(包括数的舍位,年份计算进位退位,急!

我要做一张有关2008年公司员工的年假有几天的excel的表格。
我们公司年假的算法是这样的:
1) 按照天数算,每年5天,公式为 年假= x / 365 * 5。其中x为到年底所做的天数,365为一整年有365天,5为一整年的年假为5天。5这个数字是随着足年递增而递加的,员工入职的第一年即可享受5天的带薪年休假,此后,每一年增加1天,直至15天封顶。
2) 如果2007年10月加入公司,那么现在为2008年,默认他做满2008全年可以有全年的年假天。那么就有6天年假。
3) 年假只有正数和半天,不存在0.1,0.2,0.3,0.4,0.6,0.7,0.8,0.9天。如果算下来是3.1,3.2,3.3,3.4那么算3天,如果为3.5就等于3.5天,如果是3.6,3.7,3.8,3.9算3.5天。
4) 如果他是2008年2月1日加入(包括试用期),那么他做满全年的话有365天减去2月1日之前的三十一天的年假。那么他的年假为:334/365*5天=4.58=5天。

表格第一列为姓名,第二列为加入年月日,第三列为2008年年假。 我希望我只要输入前2列,第三列通过公式就可以出来,或者是宏。当然可以添加别的辅助列来帮助计算。

谢谢大家了啊!
能解释下吗?谢谢 最主要是最后的/0.5)/2,15)

A1为姓名,B1为加入年月(用日期型),C1为下面公式(将C列设置为常规型)
=MIN(INT(IF(YEAR(B1)<2008,2008-YEAR(B1)+5,(DATE(2008,12,31)-B1)/365*5)/0.5)/2,15)
***********
你所有的日期数据是日期型的吗?
INT(XX/0.5)/2,就是将你算出来的带有小数的年化为0.5为单位的年份.
如算出来是3.4,那除以0.5为6.8,然后取个整数为6,再除以2就是3.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-06-13
一楼回答很强很准确!
相似回答