ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 8035|回复: 10

[求助] 请求一个年休假的公式,考虑工龄精确到月的

[复制链接]

TA的精华主题

TA的得分主题

发表于 2012-2-5 00:46 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 xupengnt 于 2012-2-5 01:14 编辑

  最近要做个关于年休假的表格,在论坛里学习了好久,论坛里有很多关于年休假的帖子,学到了很多,但总觉得不都全面:大部分在计算年休假时,只将工龄只计算到整数年,没有考虑到月,即使考虑到月了,也只是在工龄超过1年不满2年的时候用到了,在10年、20年2个节点上没有考虑。
  举例:以2012年12月31日为工龄计算日,
  1、2011年8月参加工作,2012年8月工作才满1年,至2012年12月31日,工龄为1.3年。2012年,只有0.3年可享受5天/年的年休假;
  2、2002年8月参加工作,2012年8月工作才满10年,至2012年12月31日,工龄为10.3年。2012年,有0.7年可享受的5天/年的年休假,0.3年可享受10天/年的年休假;
  3、1992年8月参加工作,2012年8月工作才满20年,至2012年12月31日,工龄为20.3年。2012年,有0.7年可享受的10天/年的年休假,0.3年可享受15天/年的年休假。

  我把计算年休假的几种情形罗列了一下:X(附件表格中的D列)为计算出的工龄(计算到月,精确到一位小数)
  (一)工龄不足一年的,不享受年休假。
  1、0<X<=1,年休假=0
  (二)累计工作已满1 年不满10 年的,年休假5 天;已满10 年不满20 年的,年休假10 天;已满20 年的,年休假15 天。
  2、1<X<2,年休假=(X-1)*5
  3、2<=X<=10,年休假=5
  4、10<X<11,年休假=(11-X)*5+(x-10)*10
  5、11<=X<=20,年休假=10
  6、20<X<21,年休假=(21-X)*10+(x-20)*15
  7、X>=21,年休假=15

年休假计算,精确到月.rar (4.12 KB, 下载次数: 221)

  小弟才疏学浅,求各位大侠,能不能弄个公式,直接把年休假计算出来!


TA的精华主题

TA的得分主题

发表于 2012-2-5 09:14 | 显示全部楼层
楼主看看,是否是你想要的结果,其中工龄公式作了调整,加了ROUND()。

年休假计算,精确到月.rar

8.53 KB, 下载次数: 498

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-2-5 13:02 | 显示全部楼层
是我想要的,多谢了!{:soso_e128:}

TA的精华主题

TA的得分主题

发表于 2012-2-5 13:25 | 显示全部楼层
我想提一些我的想法:
1、如果是工龄超过了1年(大于12个月),按照规定,其年休假应当是5天,这样的话,工龄是1.9年的也应当是5天,而不是按照公式计算给出的4.5天。就算工龄是1.1年的,按规定年休假也应当是5天。
2、年休假天数一般按照其发放的月份来截止(如年底或者年初),您的工龄按照年休假计算到月,可以给出精确到实际的年。所以根据您给出的年数(小数部分应去掉,不圆整),直接判断大于1的给5天,大于10的给10天,大于20的给15天。
3、如果工龄是根据年份直接计算,那么有可能出现结果是1年但实际不到的情况(如2011年8月来,对于2012年1月来说,不到12个月,但是按年份计算为1了)。但这种情况对于您按月计算的结果时,是不存在的。
4、同样的情况出现在10到11年和20到21年的结果中,所以您在考虑公式时可以不考虑1到2、10到11和20到21这些情况。
5、清风竹-的答案很不错,您的公式不一定妥当。

TA的精华主题

TA的得分主题

发表于 2012-2-5 14:51 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
yayawu_2008 发表于 2012-2-5 13:25
我想提一些我的想法:
1、如果是工龄超过了1年(大于12个月),按照规定,其年休假应当是5天,这样的话,工 ...

我的想法和你一样。但回答问题和实际休假是两回事,不管这个休假方式对与否,哈哈。

TA的精华主题

TA的得分主题

发表于 2012-2-5 15:39 | 显示全部楼层
清风竹- 发表于 2012-2-5 14:51
我的想法和你一样。但回答问题和实际休假是两回事,不管这个休假方式对与否,哈哈。

没错。
我知道你的想法。

TA的精华主题

TA的得分主题

发表于 2012-3-1 15:27 | 显示全部楼层
清风竹- 发表于 2012-2-5 09:14
楼主看看,是否是你想要的结果,其中工龄公式作了调整,加了ROUND()。

学习学习~

TA的精华主题

TA的得分主题

发表于 2012-10-31 13:58 | 显示全部楼层
第五条又规定新进职工休假天数可按剩余日期天数折算,折算方法为: (当年度在本单位剩余日历天数÷365天)×职工本人全年应当享受的年休假天数。
这个貌似没有体现?

TA的精华主题

TA的得分主题

发表于 2012-10-31 16:35 | 显示全部楼层
清风竹- 发表于 2012-2-5 09:14
楼主看看,是否是你想要的结果,其中工龄公式作了调整,加了ROUND()。

太强大了。也是我要的。。感谢

TA的精华主题

TA的得分主题

发表于 2013-9-24 19:15 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 wangtx218 于 2013-9-25 16:45 编辑
清风竹- 发表于 2012-2-5 09:14
楼主看看,是否是你想要的结果,其中工龄公式作了调整,加了ROUND()。


=SUM(5*((DATEDIF(B2,"2011-12-31","m")/12>{1,10,20})+TEXT(DATEDIF(B2,"2011-12-31","m")/12-{0,9,19},"[<]!0;[>1]!0")))
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-23 10:50 , Processed in 0.036475 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表