内容提要:非专业人士做的Excel工资表,又搞出事情了,快来围观!
在工资表的制作中,我们常常会用Excel计算工龄工资,绩效工资,医疗补助等等。
谢娜刚入职,做工资表也是头一回。临时抱佛脚,遇到问题,就百度。
这不,下面的Excel工资表,其中工龄工资就是百度得来的公式。
不信,你也百度搜索:excel如何计算工龄工资、excel工龄工资计算公式等等,出来的公式,一般计算工龄的公式都是这样:DATEDIF(F6,TODAY(),"y")。
每个单位的工龄计算标准不一样。谢娜入职这个单位,是从员工入职日期开始,精确到天,每满一年,工龄工资增加100元。
所以,根据上面的描述,H6单元格的工龄工资就是:=DATEDIF(F6,TODAY(),"y")*100,然后下拉就得到所有员工的工龄工资。
上面公式的就是用到datedif函数来计算:datedif (起始日期,结束日期,“y"),计算出工龄,然后利用工龄来乘以100,得到工龄工资。
表面看公式没有问题,其实这里面有个大坑,然而百度并没有告诉我们这个坑。
第一个坑:
序号4,熊继超是2016年7月11日入职,我们今天(2017年7月15日)是在计算6月的工资表。公式:=DATEDIF(F9,TODAY(),"y")*100,DATEDIF函数第二参数用的today(),程序返回的是当天的日期,而今天是7月15日,所以excel认为工龄就是应该是1年。但事实上,我们结算的是6月份的工资,按照6月30日来计算,就还没有满1年,因此就没有工龄工资。
第二个坑:
更悲剧的是,因为每个月都要做工资表,谢娜是直接把5月份的工资表修改而来的。一查看,这个错误影响到了前面每个月。比如第5、4、3、2等月份。
每个月的工资表打开看,today会自动更新到当天的日期,所以现在翻看之前几个月的工龄工资,都在自动更新,酿成了大祸。
如何改进?
听专业人士来说,工资表下面都应该写上制表日期,比如这样:
上面的公式,我们就可以改进为:=DATEDIF(F6,$F$3,"y")*100,然后下拉得到的结果就是正确的了。
职场经验分享
建议大家在用excel制作工资表,加个填表(制表)日期,该日期为对应的工资报表日期,然后将TODAY()函数替换成制表日期单元格的引用。
若统计的工资表与制表日期没有太大关系,建议指定一个单元格用于统计的截止日期,然后将TODAY()函数替换成统计截止日期单元格的引用。
这样,以后即使打开以前的工资表,内容也不发生变化。
今日互动:说说您工作的单位工龄工资是如何计算的。