VLOOK是什么函数?EXCEL表格的VLOOK公式怎么用
VLOOK是什么函数
vlookup为Excel函数
在表格数组的首列查找指定的值,并由此返回表格数组当前行中其他列的值。 VLOOKUP 中的 V 参数表示垂直方向。当比较值位于需要查找的数据左边的一列时,可以使用 VLOOKUP 而不是 HLOOKUP。
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup) Lookup_value 为需要在表格数组 第一列中查找的数值。Lookup_value 可以为数值或引用。若 lookup_value 小于 table_array 第一列中的最小值,VLOOKUP 返回错误值 #N/A。 Table_array 为两列或多列数据。使用对区域或区域名称的引用。table_array 第一列中的值是由 lookup_value 搜索的值。这些值可以是文本、数字或逻辑值。文本不区分大小写。 Col_index_num 为 table_array 中待返回的匹配值的列序号。Col_index_num 为 1 时,返回 table_array 第一列中的数值;col_index_num 为 2,返回 table_array 第二列中的数值,以此类推。如果 col_index_num : 小于 1,VLOOKUP 返回错误值 #VALUE!。 大于 table_array 的列数,VLOOKUP 返回错误值 #REF!。Range_lookup 为逻辑值,指定希望 VLOOKUP 查找精确的匹配值还是近似匹配值: 如果为 TRUE 或省略,则返回精确匹配值或近似匹配值。也就是说,如果找不到精确匹配值,则返回小于 lookup_value 的最大数值。 table_array 第一列中的值必须以升序排序;否则 VLOOKUP 可能无法返回正确的值。有关详细信息,请参阅排序数据。 如果为 FALSE,VLOOKUP 将只寻找精确匹配值。在此情况下,table_array 第一列的值不需要排序。如果 table_array 第一列中有两个或多个值与 lookup_value 匹配,则使用第一个找到的值。如果找不到精确匹配值,则返回错误值 #N/A。
在 table_array 第一列中搜索文本值时,请确保 table_array 第一列中的数据没有前导空格、尾部空格、直引号(’ 或
EXCEL表格的VLOOK公式怎么用
材料/工具:Excel2010
1、为了讲解的需要,特制作如图所示的表格。
2、接下来,我们的任务是通过利用VLOOKUP函数来实现查找同学C的成绩。为此在单元格中输入“=VLOOKUP”,此时就会发现VLOOKUP包括三个参数和一个可选参数。
3、其中“lookup_value”是指要查找的值,在此为“C”。
4、参数“table_array”是指搜索的区域,在此在除标题之后的整个数据区域。
5、第三个参数“col_index_num”是指整个函数返回单元格所在的列号,在此为“2”。
6、最后以右括号结尾
7、按回车键,就出现想要的结果。
vlookup想查询多个值,我该怎么办?
-01-
具体应用
1.根据姓名查询出所有的记录
如下图所示,用vlookup根据姓名查询出所有的记录,实现筛选的功能。也就是我说的一对多的查询。具体怎么做的下面一步一步说明。
对于相同的名字vlookup只返回查到的第一个值,所以我们需要将相同的名字变成不同的名字,那就用它出现的次数给它添加一个序号。比如,刘卓第一次出现就是刘卓1,第二次出现就是刘卓2。
在A列添加一个辅助列,在A2单元格输入公式=COUNTIF(B$2:B2,H$1),下拉。这样H1单元格的姓名在B列中第1次出现的时候,A列中对应的序号就是1,第2次出现的时候对应的序号就是2。
然后将B列的姓名和A列的序号连接起来作为vlookup查询区域的第1列,也就是$B$2:$B$11&$A$2:$A$11这部分。vlookup查询区域的第2列还是B列,也就是B$2:B$11这部分。实际就是下图这样。但是现在这两列还是单独的两列,怎么让它们组合在一起呢?用if函数,IF({1,0},$B$2:$B$11&$A$2:$A$11,B$2:B$11)这样就组合在一起了,作为vlookup的第2参数,也就是查询区域。
由于vlookup查询区域的第1列连接了序号,所以查询的值,也就是姓名,也要连接序号,可以用row函数,所以vlookup的第1参数就为$H$1&ROW(1:1),右拉序号不变,下拉序号加1。正好符合查询区域。
由于vlookup的查询区域只有2列,所以返回第2列,第3参数为2;查找方式是精确查找,第4参数为0。所以完整的公式为=VLOOKUP($H$1&ROW(1:1),IF({1,0},$B$2:$B$11&$A$2:$A$11,B$2:B$11),2,)。
这个公式可以右拉,是由于vlookup查询区域的第2列的列号没有锁定,右拉的时候会相对变化。但是下拉的时候会出现错误值#N/A。可以用ifna处理这种错误,最后的公式为=IFNA(VLOOKUP($H$1&ROW(1:1),IF({1,0},$B$2:$B$11&$A$2:$A$11,B$2:B$11),2,),""),不要忘了按三键。
如果用辅助列的话,用上面那种方法还不如用下面的方法。辅助列的公式为=B14&COUNTIF(B$14:B14,H$13),实际就是将姓名和序号连接起来放在辅助列中。然后就可以将A13:E23这个区域作为vlookup的查询区域,最后的公式为=IFNA(VLOOKUP($H$13&ROW(1:1),$A$13:$E$23,COLUMN(B:B),),""),而且这个公式还不是数组公式。
如果不用辅助列,你可以做到吗?在G30单元格输入公式=IFNA(VLOOKUP($H$27&ROW(1:1),IF({1,0},$A$28:$A$37&COUNTIF(OFFSET($A$28,,,ROW($28:$37)-27),$H$27),A$28:A$37),2,),""),三键结束,右拉下拉完成。这种思路和第一种方法是一样的,只不过将序号放在一个数组中,这样就可以免去辅助列,用的是offset的多维引用。感兴趣的话,你可以研究一下。
关键词: vlook vlookup想查询多个值怎么办 EXCEL表格的VLOOK公式怎么用 VLOOK是什么函数 vlookup函数查询多个值