题目:按年龄工龄学历计算工资
假设有这么一份工资等级对照表,先不管它是否科学,总之有这么个对照表。
| 年龄 | 工龄 | 学历 | 工资 |
|---|---|---|---|
| 21~30 | 0~5 | 本科以下 | 2000 |
| 本科及以上 | 2500 | ||
| 6~10 | 本科以下 | 3000 | |
| 本科及以上 | 3500 | ||
| 10+ | 本科以下 | 4000 | |
| 本科及以上 | 4500 | ||
| 31~40 | 0~5 | 本科以下 | 3000 |
| 本科及以上 | 3500 | ||
| 6~10 | 本科以下 | 4000 | |
| 本科及以上 | 4500 | ||
| 10+ | 本科以下 | 5000 | |
| 本科及以上 | 5500 | ||
| 41~50 | 0~5 | 本科以下 | 4000 |
| 本科及以上 | 4500 | ||
| 6~10 | 本科以下 | 5000 | |
| 本科及以上 | 5500 | ||
| 10+ | 本科以下 | 6000 | |
| 本科及以上 | 6500 | ||
| 51~60 | 0~5 | 本科以下 | 5000 |
| 本科及以上 | 5500 | ||
| 6~10 | 本科以下 | 6000 | |
| 本科及以上 | 6500 | ||
| 10+ | 本科以下 | 7000 | |
| 本科及以上 | 7500 |
以及这么一份员工名单,麻烦你算一下工资。
| A | B | C | D | E | F |
|---|---|---|---|---|---|
| 工号 | 姓名 | 年龄 | 工龄 | 学历 | 工资 |
| SCREW001 | 王菲 | 34 | 8 | 本科 | ? |
| SCREW002 | 刘德华 | 59 | 23 | 小学 | ? |
| SCREW003 | 金城武 | 56 | 15 | 初中 | ? |
| SCREW004 | 黎明 | 42 | 20 | 高中 | ? |
| SCREW005 | 郭富城 | 21 | 0 | 硕士 | ? |
| SCREW006 | 佘诗曼 | 58 | 24 | 博士 | ? |
| SCREW007 | 黄晓明 | 48 | 10 | 本科 | ? |
| SCREW008 | 袁弘 | 27 | 7 | 小学 | ? |
| SCREW009 | 张歆艺 | 39 | 15 | 初中 | ? |
| SCREW010 | 张艺兴 | 22 | 1 | 初中 | ? |
| SCREW011 | 张涵予 | 42 | 22 | 高中 | ? |
| SCREW012 | 张雨绮 | 54 | 30 | 大专 | ? |
| SCREW013 | 刘涛 | 32 | 4 | 本科 | ? |
| SCREW014 | 刘敏涛 | 28 | 7 | 小学 | ? |
| SCREW015 | 胡歌 | 25 | 1 | 大专 | ? |
| SCREW016 | 靳东 | 36 | 6 | 本科 | ? |
| SCREW017 | 王凯 | 44 | 13 | 高中 | ? |
| SCREW018 | 刘学义 | 31 | 9 | 本科 | ? |
| SCREW019 | 檀健次 | 23 | 0 | 高中 | ? |
| SCREW020 | 陆展博 | 46 | 25 | 硕士 | ? |
| SCREW021 | 金世佳 | 42 | 16 | 博士 | ? |
| SCREW022 | 胡一菲 | 34 | 7 | 硕士 | ? |
| SCREW023 | 张伟 | 60 | 30 | 博士 | ? |
| SCREW024 | 福尔康 | 36 | 16 | 大专 | ? |
平常用VLOOKUP查找的时候,只能查找一个参数,但是这里有三个参数,而且既有数字又有文本,那么怎样才能同时查找这么多参数呢?
其实无法一次做到的哈,但我们可以把它分解一下,从年龄、工龄的数字变成相应的等级文本,再组合起来,变成只查找一个文本参数,这样就行了。
在给定的数值范围内查找数字
我们先来查找年龄和工龄,此时需要手工做2个等级对照表
| G | H |
|---|---|
| 年龄 | 年龄等级 |
| 21 | 21~30 |
| 31 | 31~40 |
| 41 | 41~50 |
| 51 | 51~60 |
| I | J |
|---|---|
| 0 | 0~5 |
| 6 | 6~10 |
| 11 | 10+ |
小贴士 : VOOKUP里面查找数值范围的时候,公式里的第四个参数要为 TRUE。
查找年龄等级的公式 =VLOOKUP(C2,G:H,2,TRUE)
查找工龄等级的公式 =VLOOKUP(D2,I:J,2,TRUE)
查找文本
现在需要查找学历等级,我们手工做一个等级对照表
| K | L |
|---|---|
| 学历 | 学历等级 |
| 小学 | 本科以下 |
| 初中 | 本科以下 |
| 高中 | 本科以下 |
| 大专 | 本科以下 |
| 本科 | 本科及以上 |
| 硕士 | 本科及以上 |
| 博士 | 本科及以上 |
小贴士 : VOOKUP里面查找文本的时候,如果不想被近似数据干扰,公式里的第四个参数要为 FALSE。
查找学历等级的公式 =VLOOKUP(E2,K:L,2,FALSE)
混合查找数字和文本
这时候我们需要再手工做一个综合工资等级对照表。
先把原来的工资等级对照表里的空栏填满之后,在右边新建一个辅助列,然后在公式里用 & 符号得出的组合后的文本,由于有些数字连起来之后比较难辨认,而且可能影响Excel处理,建议用符号进行分隔,比如括号。
| A | B | C | D | E |
|---|---|---|---|---|
| 年龄 | 工龄 | 学历 | 工资 | 组合公式 |
| 20~30 | 0~5 | 本科以下 | 2000 | ="("&A2&")("&B2&")("&C2&")" |
然后把结果粘贴到前面的年龄和工资等级对照表之后
| M | N |
|---|---|
| 对照表组合 | 工资 |
| (20~30)(0~5)(本科以下) | 2000 |
| (20~30)(0~5)(本科及以上) | 2500 |
| (20~30)(6~10)(本科以下) | 3000 |
| (20~30)(6~10)(本科及以上) | 3500 |
| (20~30)(10+)(本科以下) | 4000 |
| (20~30)(10+)(本科及以上) | 4500 |
| (31~40)(0~5)(本科以下) | 3000 |
| (31~40)(0~5)(本科及以上) | 3500 |
| (31~40)(6~10)(本科以下) | 4000 |
| (31~40)(6~10)(本科及以上) | 4500 |
| (31~40)(10+)(本科以下) | 5000 |
| (31~40)(10+)(本科及以上) | 5500 |
| (41~50)(0~5)(本科以下) | 4000 |
| (41~50)(0~5)(本科及以上) | 4500 |
| (41~50)(6~10)(本科以下) | 5000 |
| (41~50)(6~10)(本科及以上) | 5500 |
| (41~50)(10+)(本科以下) | 6000 |
| (41~50)(10+)(本科及以上) | 6500 |
| (51~60)(0~5)(本科以下) | 5000 |
| (51~60)(0~5)(本科及以上) | 5500 |
| (51~60)(6~10)(本科以下) | 6000 |
| (51~60)(6~10)(本科及以上) | 6500 |
| (51~60)(10+)(本科以下) | 7000 |
| (51~60)(10+)(本科及以上) | 7500 |
然后我们来写最终的计算工资的公式
F2 内填入的公式为
=VLOOKUP("("&VLOOKUP(C2,G:H,2,TRUE)&")("&VLOOKUP(D2,I:J,2,TRUE)&")("&VLOOKUP(E2,K:L,2,FALSE)&")",M:N,2,TRUE)
最终表格预览
做好的表格是这样的

你可以先保存成Excel模板,然后把公式保存成值,再删除辅助列,另存为交给领导的最终表格,这次的任务就完成啦!
下次再需要计算同样要求的工资表的时候,就可以直接打开Excel模板进行套用了,非常方便。