excel中怎样双条件查找?

2819520550


在Excel中,有多种方法可以实现双条件查找,为了更加直观理解到函数,雷哥引入案例来讲解。


案例

如图所示,需要查找五班 雷哥 的成绩,二班 星爷的成绩.....


分析

我们是否可以直接可以根据姓名,使用vlookup函数查找呢? 答案明显是否定的,因为雷哥出现了多次。因此,我们必须要用两个条件(班级和姓名)进行查找成绩。


具体方法

方法一:Vlookup函数 和 "&"

思路:把两个条件,合并为一个条件。这样就可以使用vlookup进行查找了。

vlookup语法 =vlookup(查找值,查找范围,返回值的列,精确 or 模糊查找)

步骤:step1:在A3单元格中输入 =C3&D3. 拖动下拉框


step2:在J3单元格中,输入 =VLOOKUP(H3&I3,A:F,6,FALSE),进行查找。

具体的结果见下图。


方法二:使用Lookup函数

Lookup一个常用套路

=lookup(1,0/((条件1区域=条件1)*(条件2区域=条件2)),(返回的结果区域))

当条件一和条件二都成立时,会返回结果。


步骤:

在J3单元格中,输入 =LOOKUP(1,0/(C:C=H3)*(D:D=I3),F:F) 。之后拖拽即可。


公式解释:

满足条件C:C=H3,且满足 D:D=I3 时,返回F列的数据



方法三:sumifs函数

函数语法 =sumifs( 求和区域,条件区域1,条件1,条件区域2,条件2,....)

因为满足条件的都只有一条数据,因此求和的数值就是它本身。

在J3单元格,输入 =SUMIFS(F:F,C:C,H3,D:D,I3)


方法四:使用Sumproduct函数

函数语法 =Sumproduct( 条件1*条件2,返回值)

<strong>

在单元格中输入=SUMPRODUCT((D:D=I5)*(E:E=J5),G:G),拖拽完成填充

<strong>

大家有任何问题,欢迎留言请教雷哥~

雷哥office


在excel中,进行多条件查找的函数运用vlookup和index—match函数都比较简单,下面就分别对这两个函数做一个比较详细的介绍。

一、vlookup函数。如下图所示,根据班级和姓名该如何查找成绩呢?先放公式:=VLOOKUP(F2&G2,IF({1,0},$A$1:$A$19&$B$1:$B$19,$C$1:$C$19),2,0)。此公式为数组函数,输完公式后按下ctrl+shift+enter键计算结果。这个公式咋一看看挺长,不过不要担心,现在就为你详细地解释这个公式到底是什么意思。

对于vlookup函数,一共有四个参数,分别是查找依据,查找范围,列数,逻辑值。比如上图第一个参数是F2&G2,把F2和G2单元格连接起来作为一个整体,表示要根据一班关羽两个条件进行查找。第二个参数表示查找范围,此处运用了if数组函数,表示如果是1,表示满足条件,返回到$A$1:$A$19&$B$1:$B$19的数组组合,如果是0,表示不满足条件,返回$C$1:$C$19区域,此处为什么要用到{1,0}呢?因为我们查找依据所在的列有两列,而查找返回的列(即成绩列)只有一列。直接选择ABC三列会因为无法区分在查找区域内单条件查找还是多条件查找而出现错误。所以此处把A和&B列看成一个整体,利用if数组函数和C列隔开,实现查找的目的。第三个参数填2即可,因为只有AB两列组成的整体列和C列数据。第四个参数选择0表示精确匹配。

二、index—match函数。如果实现与上面vlookup函数同样的查找结果运用index—match函数的公式为=INDEX($C$1:$C$19,MATCH(F11&G11,$A$1:$A$19&$B$1:$B$19,0))。

这个函数由两个函数嵌套组成。其中match函数只填三个参数即可,分别是(查找值、查找区域,逻辑值),最后返回的结果是查找内容所在的行数,外面的index函数只有两个参数,分别是(查找依据所在的列,查找内容所在的行数),其中MATCH(F11&G11,$A$1:$A$19&$B$1:$B$19,0)表示F11和G11单元格组成的整体作为查找值,在AB两列的相关区域进行查找,第三个参数为0表示精确匹配。最后返回的结果是3,表示表示一班关羽在AB两列的区域内位于第三行。而INDEX($C$1:$C$19,3)就更容易理解了,直接返回到C列的第三行数,也就是82.

这就是本文介绍的双条件查找,想要学习更多的excel技巧,欢迎关注疏木excel。与您共同学习进步。


疏木职场办公


示例:

比如下表是学生的考试成绩原始表,需要查找某学生的某科成绩,怎么做?

解决方案:

当当当当~ index 和 match 函数组合拳闪亮登场! =INDEX(B2:I7,MATCH(B11,A2:A7,0),MATCH(A11,B1:I1,0))

我把机器语言翻译成人类语言帮助大家理解一下阿:

- B2:I7:查找的数据源的区域,这里是所有成绩区域

- MATCH(B11,A2:A7,0):在第几行

- MATCH(A11,B1:I1,0)):在第几列

再把 match 函数翻译一下:

- MATCH(B11,A2:A7,0):根据B11 (学科)的值,查找并返回该学科所在的行数

- MATCH(A11,B1:I1,0)):根据A11 (姓名)的值,查找并返回该同学所在的列数

* 请注意:index 函数规定,行和列值的返回顺序不可以反过来,也就是说,上面两个 match 函数的位置不能互换。



Excel学习世界


  1. 当我们需要根据地址、类别找出相对应对额供应商时,我们可以用很多种办法,现在我给大家分享一种给大家

  2. 使用LOOKUP,这里介绍下LOOKUP的一种经典的使用方法:LOOKUP(1,0/((条件1)*(条件2)*(条件n)),返回区域),就当做是一种模板;在这里我们就会使用到改公式=LOOKUP(1,0/(($A$2:$A$11=F2)*($B$2:$B$11=G2)),$C$2:$C$11)。

  3. 3

    这里多条件查找就完成了


i阅活


\n

{!-- PGC_VIDEO:{"thumb_height": 360, "file_sign": "ae4244358de1068bebbdc6cfa1888b38\

小蓝条xiaolantiao


用vlookup函数。 第一表sheet1,第二表sheet2,数据在第2行: 在sheet2的b2输入=if(iserror(vlookup($a2,sheet1!$a:$d,column(),0)),"\


分享到:


相關文章: