Excel中年休假的计算

今天遇到一个问题,需要帮朋友计算公司员工的年休假,大意如下:

Excel中年休假的计算

员工数据大概如下样子:

Excel中年休假的计算

于是写公式:

=if(and(C2<1,year(B2)=year(now())),0

	,if(c2=1,int(datedif(date(year(now()),month(b2),day(b2)),date(year(now()),12,31),"D")/365*5)

		,if(and(c2>=1,c2<10),5

			,if(c2=10,int(datedif(date(year(now()),1,1),date(year(now()),month(b2),day(b2)),"D")/365*5+datedif(date(year(now()),month(b2),day(b2)),date(year(now()),12,31),"D")/365*10)

				,if(and(c2>10,c2<20),10

					,if(c2=20,int(datedif(date(year(now()),1,1),date(year(now()),month(b2),day(b2)),"D")/365*10+datedif(date(year(now()),month(b2),day(b2)),date(year(now()),12,31),"D")/365*15)

						,if(c2>20,15

							,""

)))))))