VLOOKUP返回值问题

2024-12-16 12:06:00
推荐回答(4个)
回答1:

vlookup只可能取到第一个符合条件的,二个的话不可能。如果要用函数,只能用index+if的组合数组公式
假设你的sheet1表A列姓名,B列年龄,C列性别,D列成绩信息
sheet2表,想在A2输入姓名进行查询。
那B2公式
=INDEX(Sheet1!B$2:B$101,SMALL(IF(Sheet1!$A$2:$A$101=$A$2,ROW($A$1:$A$100),4^8),ROW(A1)))
数组公式,输入完公式后,按ctrl+shift+回车结束公式输入,不要直接回车,这步关键。然后将这个公式右拉三列,并下拉多行。
没问题,谢谢采纳。!

回答2:

假如数据在SHEET1工作表,A1到A8存放姓名,B1:B8存放成绩,你想查找张三的成绩,可以用公式
=IF(ROW(1:1)<=COUNTIF(Sheet1!A:A,"张三"),INDEX(Sheet1!B:B,SMALL(IF(Sheet1!$A$1:$A$8="张三",ROW($1:$8),65536),ROW(1:1))),"")
按CTRL+SHIFT+ENTER结束公式

但是根据你提供的信息,这个公式应该不是你想要的,仅给你一个参考.

VLOOKUP函数只能返回一个单一的数值,其实你可以用Vlookup函数的数组公式来解决,前提是你的SHEET1工作表中还有其它信息可以区别名字相同的学生.一般如果是学生信息表,应该要有一个唯一的学号,因为只有这样才能区分名字相同的学生,那么我做如下假设:
你的SHEET1工作表的A1:A100存放学生姓名,B1:B100存放学号,C1:C100存放学生的成绩
你想在SHEET2工作表中查找20个人在成绩,同样SHEET2工作表的A1:A20存放学生姓名,B1:B20存放学号,那么你就可以在C1单元格输入公式 =VLOOKUP(A1&B1,IF({1,0},SHEET1!$A$1:$A$100&SHEET1!$B$1:$B$100,SHEET1!$C$1:$C$100),2,) 按CTRL+SHIFT+ENTER结束公式,然后下拉公式到C20单元格

你也可以参考我的笔记: http://user.qzone.qq.com/43680701/infocenter Excel--- Vlookup函数的应用的第三部分 " 三、Vlookup函数的数组应用"

回答3:

vlookup可以查找重复值,只是非常麻烦,可以改用别的办法。
=IF(COLUMN(A1)>COUNTIF(Sheet1!$A$2:$A$58,$A2),"",INDIRECT("Sheet1!B"&SMALL(IF(Sheet1!$A$2:$A$58=$A2,ROW($1:$57)),COLUMN(A1))))
按ctrl+shift+enter输入后,右拉下拉填充。

回答4:

请改正为下方公式,少了几个括号。
=IF(ISNA(VLOOKUP(A6,IF(,品项数量!A:A,品项数量!B:B),2,0)),"0",VLOOKUP(A6,IF(,品项数量!A:A,品项数量!B:B),2,0))