Excel公式查找技巧:从多行/多列区域中查找值并返回相对应首行/首列值
- 2026-11-06 10:56:19
Excel公式查找技巧:从多行/多列区域中查找值并返回相对应首行/首列值学习Excel技术,关注微信公众号: excelperfect 欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。 欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料,并通过社群加入专门的微信讨论群,更方便交流。
标签:Excel公式技巧,INDEX函数,MATCH函数,MMULT函数
在Excel列表中查找值,我们通常会想到VLOOKUP函数/XLOOKUP函数以及INDEX/MATCH函数组合。然而,它们通常适用于从特定列或行中获取与查找值相对应的值。如果涉及到要在多行或多列中查找某值并返回对应的值,那该如何做呢?
如下图1所示,在单元格区域B1:D4中查找单元格F2中的值,返回其对应的首列中的值。

图1
示例中,要查找的值是“f”,返回值“项目行2”;如果要查找的值是“d”,则返回值应该是“项目行4”。图1中可以看到,在单元格G2中,使用了公式:
=INDEX(A1:A4,MATCH(1,MMULT(--(B1:D4=F2),TRANSPOSE(COLUMN(B1:D4)^0)),0))
该公式返回了相应的结果。
如果我们需要返回首行的值呢?如下图2所示,在单元格区域A2:C5中查找单元格E2中的值,并返回其对应首行的值。

图2
单元格F2中的公式为:
=INDEX(A1:A4,MATCH(1,MMULT(--(B1:D4=F2),TRANSPOSE(COLUMN(B1:D4)^0)),0))
同样返回了我们需要的结果。
上述公式技巧的关键在于MMULT函数。在单元格F2的公式中,MMULT函数的结果为:
=INDEX(A1:C1,1,MATCH(1,{0;1;0},0))
这样,MATCH函数返回2,作为INDEX函数的第3个参数,即:
=INDEX(A1:C1,1,2)
结果返回单元格B1的值,即“项目列2”。
本文来自网友投稿或网络内容,如有侵犯您的权益请联系我们删除,联系邮箱:wyl860211@qq.com 。