上 10个示例让你的VLOOKUP函数应用从入门到精通( 二 )


上 10个示例让你的VLOOKUP函数应用从入门到精通


图7
在单元格B14中的公式仍然为:
=VLOOKUP(A14,$A$3:$E$10,MATCH(B13,$A$2:$E$2,0),0)
查找值在下拉列表中,这些下拉列表是使用Excel的数据有效性功能创建的 。选择单元格A14,单击“数据——数据有效性”,在“数据有效性”对话框中设置为“序列”,来源选择单元格区域A3:A10 。同样的方法设置单元格B13的下拉列表 。
示例4:三向查找
在示例2中,使用了一个包含不同学科学生成绩的查找表,是一个使用两个变量(学生姓名和学科名称)双向查找学生成绩的示例 。
现在,假设一年中,学生有三种不同的测试:单元测试、期中测试和期末测试 。那么,三向查找就是从指定测试中获取学生指定科目的成绩 。如下图8所示 。
上 10个示例让你的VLOOKUP函数应用从入门到精通


图8
在图8的示例中,VLOOKUP函数可以查找三个不同的表(单元测试、期中测试和期末测试),返回其中某学生的某学科的成绩 。
在单元格H4中的公式为:
=VLOOKUP(G4,CHOOSE(IF(H2=”单元测试“,1,IF(H2=”期中测试“,2,3)),$A$3:$E$7,$A$11:$E$15,$A$19:$E$23),MATCH(H3,$A$2:$E$2,0),0)
公式使用CHOOSE函数来确定要引用的表 。公式中的CHOOSE函数为:
CHOOSE(IF(H2=”单元测试“,1,IF(H2=”期中测试“,2,3)),$A$3:$E$7,$A$11:$E$15,$A$19:$E$23)
第1个参数是IF(H2=”单元测试“,1,IF(H2=”期中测试“,2,3)),检查单元格H2中的值,返回要选择各类测试表所对应的数值 。如果是“单元测试”,则返回1,CHOOSE函数返回单元格区域$A$3:$E$7;如果是“期中测试”,则返回2,否则返回3,分别对应着单元格区域$A$11:$E$15和$A$19:$E$23 。
示例5:获取位于列表最后的值
可以创建VLOOKUP公式来获取位于列表最后一个位置的数字值 。
在Excel中可以使用的最大的正数是9.99999999999999E+307,这意味着在VLOOKUP函数中最大的查找数也是这个数 。几乎不会涉及到如此大的一个数的计算,但可以使用来获取列表中最后一个数字 。
如图9所示,在单元格区域A1:A14中有一组数,想要获取列表中最后一个数,即1514 。
上 10个示例让你的VLOOKUP函数应用从入门到精通


图9
公式为:
=VLOOKUP(9.99999999999999E+307,$A$1:$A$14,1,TRUE)
注意到,公式使用了近似匹配,并且列表也没有排序 。
下面是使用了近似匹配的VLOOKUP函数的工作原理 。VLOOKUP函数从顶到底搜索最左侧的列:
如果发现一个精确匹配的值,则返回该值 。
如果发现一个高于查找值的值,则返回该值所在单元格上方单元格中的值 。
如果查找值大于列表中所有的值,则返回最后一个值 。
由于9.99999999999999E+307是Excel中可以使用的最大数,将该数用作查找值时,从列表中返回最后一个数字 。
同样的原理也可以用于返回列表中最后一个文本项 。如图10所示 。
上 10个示例让你的VLOOKUP函数应用从入门到精通


图10
公式为:
=VLOOKUP(“zzz”,$A$1:$A$8,1,TRUE)
Excel查找所有的名字,由于zzz比任何文本都大,因此返回列表中最后一个文本项 。

猜你喜欢