只要碰到从一张表中查询并列出匹配信息的情形,首先要考虑的就是“VLOOKUP能不能做到?”
一、查询首选VLOOKUP函数(对右边数据列的引用)
VLOOKUP函数的语法和功能如下。
在H2单元格输入公式:=VLOOKUP(G2,B:E,4,0)
其中0代表精确匹配,查找一摸一样的数据。
公式含义为:用G2单元格的值(易方达蓝筹精选混合),去查找范围(B:E)中匹配第1列(B列)中的数据,找到一模一样的数据(基金名称)之后,返回查找区域内第4列中同一行的数据,也就是基金最新规模。
二、查找并返回多列结果:MATCH函数
MATCH函数用于查找对象在一组数据中的具体位置,返回一个数值结果。它的参数和语法与VLOOKUP极为相似,但是比VLOOKUP还要简单。它比VLOOKUP少了一个参数。
在K2单元格输入公式:=MATCH(J2,B:B,0)
公式含义:在B列中查找J2单元格的值(兴全趋势投资混合),返回所在位置第2行。对于横向的一行数据,同样可以用MATCH查找匹配,返回对应的位置(第几列)。
用MATCH函数自动计算得到的动态结果第N列,就可以作为VLOOKUP函数中的第3个参数,从而实现查找一个对象,返回多个结果的一对多查询。
在N2单元格输入公式:=VLOOKUP($M$2,$B:$E,MATCH(N$1,$B$1:$E$1,0),0)
再将公式复制到O2单元格。
三、从右向左逆向查找:INDEX函数
使用VLOOKUP查找匹配有一个前提条件,那就是查找对象需在匹配范围内的首列,否则无法找到结果。因此,我们在记录数据时,一般都是将标示该行记录独一无二的关键索引放在数据源的首列,如日期时间、序号、工号、编号、流水号等。这样我们要查找匹配数据就变得非常简单。
有的时候,一些数据表行列都是固定的,不允许更改次序,又该怎么办?这时就可以使用另外一个查找引用的函数INDEX来帮忙。
公式含义为:在给定的区域内,返回第几行第几列的值。
INDEX和MATCH函数刚好能够互补,用MATCH查找匹配可以得到位置信息作为行/列序。INDEX函数就可以将其作为参数,返回区域中交叉点的值。
在R2单元格输入公式:=INDEX(A:A,MATCH(Q2,B:B,0))
公式含义:先用MATCH函数查找基金名称[富国天惠成长混合],返回该基金在B列中的位置(第7行),MATCH所得的位置为7,然后INDEX函数将MATCH所得的结果作为[行序]参数,返回A列中第7行的值(161005)。由于INDEX区域参数只有一列,列序省略不填。
评论 (0)