Excel双向查找的8个公式,全了!

论坛 期权论坛 期权     
Excel精英培训   2019-7-8 04:47   2968   0
在Excel表格中,双向查找也称交叉查找,即同时根据行和列的条件进行查找。今天兰色分享8个查找公式并添加注释,希望对大家有用。

【例】如下图所示,要求在单元格D10设置公式,根据姓名和月份查找对应的销售量。






公式1

=INDEX(C3:H7,MATCH(B10,B3:B7,0),MATCH(C10,C2:H2,0))

注:这是最常用的双向查找套路,利用Macth分别查找姓名所在行数和月份所在列数,然后用index(表格,行数,列数)提取对应的数值

公式2

=OFFSET($B$2,MATCH(B10,B3:B7,0),MATCH(C10,C2:H2,0))

注:同公式1用match查找行、列数,但最后是用offset(目标单元格,偏移行数,偏移列数)提取对应的值。

公式3

=VLOOKUP(B10,$B$3:$H$7,MATCH(C10,$C$2:$H$2,0)+1,0)

注:用match函数查找3月(C10数据)所在列数,作为Vlookup(目标,表格,列数,0)函数的第3个参数。

公式4

=INDIRECT(ADDRESS(MATCH(B10,B1:B7,0),MATCH(C10,A2:H2,0),,,"sheet1"))

注:用match函数根据给出的姓名和月份查找行、列数,然后用address(行数,列数,绝对引用方式,是否为r1c1,表格名)组合成引用地址,然后用indirect(单元格地址)函数提取值。

公式5

=HLOOKUP(C10,C2:H7,MATCH(B10,B2:B7,0),0)

注:用match函数查找姓名(B10数据)所在行数,作为Hlookup(目标,表格,行数,0)函数的第3个参数。

公式6

=SUMPRODUCT(($B$3:$B$7=B10)*($C$2:$H$2=C10)*$C$3:$H$7)


注:利用=号对比把符合条件的变成True,不符合条件的变为false,再用(行数据)*(列数据)转换成N行N列的数组并把不符合条件的全部变成0,而符合条件的会变成1,然后再*值区域把1转换成符合条件的数值,最后用sumprouct提取值。

公式7

=SUM((B3:B7=B10)*(C2:H2=C10)*(C3:H7)) 数组公式

注:原理同公式6,只是这里用了sum函数提取唯一符合条件(大于0)的值。因为sum函数不能直接进行数组运算,所以本公式为数组公式,要用ctrl+shift+enter完成输入。

公式8

=MAX((B3:B7=B10)*(C2:H2=C10)*(C3:H7)) 数组公式

注:原理同公式7,因为是数组中除了符合条件的值外,其余的全是0,所以这里也可以用max求最大值的方式提取数值。本公式同样也是数组公式,输入方法同7.

兰色说: 双向查找会一种公式就行了,干嘛要学这么多个烧脑的公式?兰色想说,这就是你和excel高手的区别。解题思路很重要,遇到问题时你总是找不到解决办法,而高手由于经常进行一题多解的思维锻炼,所以遇到难题马上就会闪现出很多解法。


长按下面二维码图片,点上面”识别图中二维码“然后再点关注,每天可以收到一篇兰色最新写的excel教程。



分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:863
帖子:172
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP