excel学习库

excel表格_excel函数公式大全_execl从入门到精通

如何制作可以根据员工工龄自动调整的工龄工资表?

小琪接下来,准备制作工龄工资表。关于工龄工资,公司的规定是这样的: 工龄不到1年的,年功工资为0; 工龄在1至4年之间的(包含),年功工资为150; 工龄在5至9年之间的(包含),年功工资为300; 工龄在10至14年之间的(包含),年功工资为450; 工龄在15至19年之间的(包含),年功工资为600; 工龄在20年及以上的,年功工资为750。 了解了公司的工龄工资的管理规定后,小琪便开始工作了: Step1:制作工龄工资表。 小琪首先制作了一份工龄工资表:(如图 510所示)图5-10Step2:统计员工工龄。 在这份表格中,可以根据员工入职时间来实现员工工龄的自动计算,此处需要用到DATEDIF函数。由于DATEDIF函数属于隐藏函数,因此需要直接在单元格中录入。(如图 511所示)图5-11参数一为起始日期,即员工入职日期; 参数二为终止日期,即当天日期; 参数三为两个日期差的单位,在本例中选择计算年份差,因此录入“Y”。 完整公式为:=DATEDIF(C2,TODAY(),"Y"),将公式向下拖动,即可计算所有员工的工龄,且此工龄可以随实际日期变化而自动增加,无需再进行人工核实后手动添加。 Step3:计算工龄工资。 接下来的工龄工资的计算,小琪为难了,用IF函数有些麻烦,用VLOOKUP函数,以前都是查一个数据,而现在是一个数据区域,VLOOKUP好像不能用了。这怎么办呢?看来还要去麻烦顾总了。 “小琪,这个问题可以用条件表达式来解决。由于IF函数只能有7层嵌套,且公式比较繁琐,如果需要判断的条件相对较多,则可以考虑用条件表达式进行判断了。” 在条件表达式中,有两个符号必须要熟记,一个是乘号(*)一个是加号(+),其中乘号(*)相当于AND函数,加号(+)相当于OR函数。 同时,还要了解,在条件表达式中,返回的结果只有两个,一个是TURE,一个是FALSE。在Excel中TURE又可以表达为“1”,FALSE可以表达为“0”。图5-12在本例中,需要对D列的工龄数据进行判断,我们以E2单元格为例,制作公式(如图 512所示): 条件1:如果工龄小于1年,则年功工资为0。这时条件表达式可以记为:(D2<1)*0。括号中的为判断条件,后面的0值为年功工资的金额。即当此员工工龄小于1时返回值为TURE(1),这时表达式为1*0=0,这样此人的年功工资为零。如果此员工工龄大于或等于1,则返回值为FALSE(0),此表达式变为0*0=0。 条件2:如果工龄大于等于1年,小于5年,则年功工资为150。这时条件表达式可以记为:(D2>=1)*(D2<5)*150。在这个公式中,有两个条件,第一个条件为D2>=1(即工龄大于等于1),第二个条件为D2<5(即工龄小于5),中间有乘号(*)连接,表示两个条件必须同时成立,返回值才为1。当此员工工龄位于此区间时,则表达式变为:1*120=150。如果两个条件中有一个不满足,则表达式为:0*150=0。 条件3:如果工龄大于等于5年,小于10年,则年功工资为300。这时条件表达式可以记为:(D2>=5)*(D2<10)*300。在这个公式中,同样有两个条件,第一个条件为D2>=5(即工龄大于等于5),第二个条件为D2<10(即工龄小于10),中间有乘号(*)连接,表示两个条件必须同时成立,返回值才为1。当此员工工龄位于此区间时,则表达式变为:1*300=300。如果两个条件中有一个不满足,则表达式为:0*300=0。。 条件4:如果工龄大于等于10年,小于15年,则年功工资为450。这时条件表达式可以记为:(D2>=10)*(D2<15)*450。在这个公式中,同样有两个条件,第一个条件为D2>=10(即工龄大于等于10),第二个条件为D2<15(即工龄小于15),中间有乘号(*)连接,表示两个条件必须同时成立,返回值才为1。当此员工工龄位于此区间时,则表达式变为:1*450=450。如果两个条件中有一个不满足,则表达式为:0*450=0。 条件5:如果工龄大于等于15年,小于20年,则年功工资为600。这时条件表达式可以记为:(D2>=15)*(D2<20)*600。在这个公式中,同样有两个条件,第一个条件为D2>=15(即工龄大于等于15),第二个条件为D2<20(即工龄小于20),中间有乘号(*)连接,表示两个条件必须同时成立,返回值才为1。当此员工工龄位于此区间时,则表达式变为:1*600=600。如果两个条件中有一个不满足,则表达式为:0*600=0。 条件6:如果以上条件都不满足,则表示工龄至少是20年,那么年功工资为750。这时表达式可以记为:(D2>=20)*750。如果此条件成立,则表达式变为:1*750=750。不成立,则表达式为:0*750=0 当六个条件表达式全部制作完成后,这六个条件表达式中,只有条件成立的那一个结果不为零,其它结果均为零。接下来,只需要对这六个条件表达式用“+”号连接起来就可以了,完整的公式为: =(D2<1)*0+ (D2>=1)*(D2<5)*150+ (D2>=5)*(D2<10)*300+ (D2>=10)*(D2<15)*450+ (D2>=15)*(D2<20)*600+ (D2>=20)*750 由于D2单元格中,工龄为37,因此条件表达式的计算结果为:0+0+0+0+0+750,最终此员工的年功工资为750元。 PS:由于条件表达式通常判断条件较多,可在单元格录入公式的过程中,使用ALT+ENTER键,加入强制换行符,使公式看起来逻辑关系更清楚,此操作不影响最终结果。(效果如图 513所示)图5-13“顾总,这个条件表达式比IF函数公式短多了,而且还不受条件个数的限制。” “对,在工作中,这两种方法都要掌握,可以根据条件的具体情况,选择合适的方法。”

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年12月    »
1
2345678
9101112131415
16171819202122
23242526272829
3031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
      友情链接