函数IF和VLOOKUP结合使用?

表格一为本月数据,表格二为上月数据,首先根据表一A列姓名在表二中寻找性别,如果找到了则在表一 B列的地方显示相应的数据。如果没有找到,则需要根据表一 B列显示的不同内容进行判断后,在表一B列显示相应的数据(本月新增两个名字分别是小红和小明,判断条件如果叫小红,则为女,小明则为男)

你的这里需要多级的嵌套,其实不建议这样,因为新增的员工手动输入就好了,或者新增人员有个列表,再进行一次vlookup。

按目前题主要求,一可以参考如下:

假设表2也是A列姓名,B列性别并假设表1有一行表头行,也就是数据从第二行开始

可以在表1的B2单元格输入:

=IFERROR(VLOOKUP(A2,Sheet2!$A:$B,2,0),IF(A2="小红","女",IF(A2="小明","男","无此人")))

这里利用的函数说明:

IFERROR

说明:2个参数,当第一个参数计算无误时候,返回其计算结果;如第一个参数是错误值,则返回第二个参数对应的结果

使用原因:当vlookup未能找到人员时,会返回错误,因此以此判断人员是否在表2中

备注:函数与if-iserror连用是一个效果

VLOOKUP

说明:4个参数,第一个参数为查询值;第二个参数为查询范围,查询值和返回值都必须位于这个区域,且查询值必须是区域的第一列;第三个参数为返回值距离查询值数起第几列;最后一个是查询方式,通常是用精确匹配,也就是0或者false,模糊匹配要求先对数据排序,反而麻烦

使用原因:查找第二个表中对应人员的性别

IF

说明:3个参数,第一个参数是判断条件,结果应该是真或者假表示的式子;第二个参数是如果判断条件是真的时候,返回的结果;第三个参数是如果判断条件是假的时候,返回的结果;

使用原因:如果表2查无此人,应检查姓名是否小红和小明,因此要比对

备注:这里只有两个人,因此最后如果也不是小明,返回无此人,实际上可以不断嵌套下去

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-03-20
=VLOOKUP(A1,SHEET2!A:B,2)
至于你的说明根据表一B列显示的相应数据,理解不来。
或者这样:
=IF(COUNTIF(SHEET2!A:A,A2),VLOOKUP(A1,SHEET2!A:B,2),"不知道显示男孩是女")追问

就是根据姓名找出对应的性别,前面四个名字是在上个月的表格中有的,所以我想可以用VLOOKUP找到相应的结果显示在表一的B列,第五、六个名字是这次新增的,按照规定,如果加妹妹就显示为女,叫弟弟就显示为男,我想这个可以用IF判断来做到。我的主要问题就是怎么把VLOOKUP和IF判断写在一起,

追答

=IF(COUNTIF(SHEET2!A:A,A2),VLOOKUP(A1,SHEET2!A:B,2),"不知道显示男孩是女")
参考这个公式自己理解吧。因为你的描述我很难理解。你的表1A列新增的名字里有“弟弟”“妹妹”字样?

追问

不好意思,我修改了问题,不知道你这样是不是明白一点
表格一为本月数据,表格二为上月数据,首先根据表一A列姓名在表二中寻找性别,如果找到了则在表一 B列的地方显示相应的数据。如果没有找到,则需要根据表一 B列显示的不同内容进行判断后,在表一B列显示相应的数据(本月新增两个名字分别是小红和小明,判断条件如果叫小红,则为女,小明则为男)

追答

=IF(COUNTIF(SHEET2!A:A,A2),VLOOKUP(A1,SHEET2!A:B,2),IF(A2="小明","男","女"))

但这没什么意义,你要明白函数的本来面目你才会去应用。下个月新增个男的但不叫小明,你怎么搞?
如果有身份证,这个才是唯一解决的办法。有些男孩子的小名也很女孩子的一样。

第2个回答  2020-03-20
用二个VLOOKUP函数,然后用公式嵌套:
=IFERROR(VLOOKUP(), VLOOKUP())
应该可以实现你的需求了
相似回答