如何在Excel用Vlookup和IF函数嵌到做工资数据提取

表格左边是4月份工资表,右边是5月份最新工资,但是名字顺序不同,问题:如何利用公式快速检索表格右边数据并且更新4月份原表格工资,有劳大神能提供公式在下方,感谢~~

VLOOKUP是一个查找函数,给定一个查找的目标,它就能从指定的查找区域中查找返回想要查找到的值。它的基本语法为:
VLOOKUP(查找目标,查找范围,返回值的列数,精确OR模糊查找)
下面以一个实例来介绍一下这四个参数的使用
例1:如下图所示,要求根据表二中的姓名,查找姓名所对应的年龄。
公式:B13 =VLOOKUP(A13,$B$2:$D$8,3,0)
参数说明:
1 查找目标:就是你指定的查找的内容或单元格引用。本例中表二A列的姓名就是查找目标。我们要根据表二的“姓名”在表一中A列进行查找。
公式:B13 =VLOOKUP(A13,$B$2:$D$8,3,0)
2 查找范围(VLOOKUP(A13,$B$2:$D$8,3,0) ):指定了查找目标,如果没有说从哪里查找,EXCEL肯定会很为难。所以下一步我们就要指定从哪个范围中进行查找。VLOOKUP的这第二个参数可以从一个单元格区域中查找,也可以从一个常量数组或内存数组中查找。本例中要从表一中进行查找,那么范围我们要怎么指定呢?这里也是极易出错的地方。大家一定要注意,给定的第二个参数查找范围要符合以下条件才不会出错:
A 查找目标一定要在该区域的第一列。本例中查找表二的姓名,那么姓名所对应的表一的姓名列,那么表一的姓名列(列)一定要是查找区域的第一列。象本例中,给定的区域要从第二列开始,即$B$2:$D$8,而不能是$A$2:$D$8。因为查找的“姓名”不在$A$2:$D$8区域的第一列。
B 该区域中一定要包含要返回值所在的列,本例中要返回的值是年龄。年龄列(表一的D列)一定要包括在这个范围内,即:$B$2:$D$8,如果写成$B$2:$C$8就是错的。
3 返回值的列数(B13 =VLOOKUP(A13,$B$2:$D$8,3,0))。这是VLOOKUP第3个参数。它是一个整数值。它怎么得来的呢。它是“返回值”在第二个参数给定的区域中的列数。本例中我们要返回的是“年龄”,它是第二个参数查找范围$B$2:$D$8的第3列。这里一定要注意,列数不是在工作表中的列数(不是第4列),而是在查找范围区域的第几列。如果本例中要是查找姓名所对应的性别,第3个参数的值应该设置为多少呢。答案是2。因为性别在$B$2:$D$8的第2列中。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-06-03
如果是在4月分资表上直接更新为5份数据,则E2=vlookup(C2,H:I,2,0)。备注栏自己手动修改吧。 这个公式有个要求,是以姓名来查找更新的,所以姓名不能有相同的的,确实有相同姓名的,可以加个符号以区别。本回答被提问者采纳
第2个回答  2019-06-03
在G2中输入如下公式
= vlookup(c2,h:i,2,)
下拉填充
第3个回答  2019-06-03
只用一个Vlookup就可以了,不需要IF。
第4个回答  2019-06-03
这里输入函数的意思是:如果科目代码为空,那么科目名称就为空
后面的VLOOKUP应该还有一份科目代码与科目名称对照表配合使用
例如:科目代码在X列,科目名称在Y列
公式应该写成=IF(G3="","",VLOOKUP(G3,X:Y,2,0))
就是在X:Y的范围内查找与G3相同的科目代码,返回对应的科目名称
相似回答