vlookup函数是工作中excel中最常用的查找函数。但遇到反向、双向等复杂的表格查找,还是要请出今天的主角:index Match函数组合。本文分别图文详解使用index Match函数组合实现反向、双向等复杂的表格查找的方法。
1、反向查找
【例1】,要求根据产品名称,查找编号。
分析:
先利用Match函数根据产品名称在C列查找位置
=MATCH(B13,C5:C10,0)
再用Index函数根据查找到的位置从B列取值。完整的公式即为:
=INDEX(B5:B10,MATCH(B13,C5:C10,0))
2、双向查找
【例2】,要求根据月份和费用项目,查找金额
分析:
先用MATCH函数查找3月在第一行中的位置
用Datedif函数轻松搞定各类到期提醒及工龄计算
在日常的人事管理中,各种到期提醒(如生日提醒、转正提醒、合同到期提醒、退休提醒)及工龄计算是经常会用到的,这些场景其实只要使用一个DATEDIF函数,就全部轻松搞定。它们的本质就是需要计算两段时间之间间隔的天数或者月数。各个场景使用示例如下: 有了离转正天数这个值就可以通过筛选、函数提醒、条件格式等方式提取你想要的人
=MATCH(B10,$A$2:$A$6,0)
再用MATCH函数查找费用项目在A列的位置
= MATCH(A10,$B$1:$G$1,0)
最后用INDEX根据行数和列数提取数值
INDEX(区域,行数,列数)
=INDEX(B2:G6,MATCH(B10,$A$2:$A$6,0),MATCH(A10,$B$1:$G$1,0))
3、多条件查找
【例3】,要求根据入库时间和产品名称,查找入库单价。
分析:
由于match的第二个参数可以支持合并后的数组所以可以直接进行合并查找:
=MATCH(C32&C33,B25:B30&C25:C30,0)
查找到后再用INDEX取值
=INDEX(D25:D30,MATCH(C32&C33,B25:B30&C25:C30,0))
由于公式中含有数组运算(一组数同另一组数同时运算),所以公式需要按ctrl shift enter三键完成输入
使用VLOOKUP函数进行一对多查询的方法
就像下图所示,需要根据不同的部门,查询这个部门的所有人员。 =INDEX(C:C,SMALL(IF(B$2:B$12=E$2,ROW($2:$12),4^8),ROW(A1)))&"" 这个公式看起来好长啊 今天既然你说到了VLOOKUP函数,那么我们就乘机离这个猥琐四人组远点,也好来多了