如何在Excel表格中查找数据

  • 格式:pdf
  • 大小:205.73 KB
  • 文档页数:8

本文分步介绍了如何使用 Microsoft Excel 中的各种内置函数在表中(或单元格区域中)查找数

据。您可以使用不同的公式来获取相同的结果。

创建示例工作表

本文使用一个示例工作表来阐释 Excel 的内置函数,例如引用列 A 中的姓名并从列 C 中返回

该用户的年龄。要创建此工作表,请在空白 Excel 工作表中输入下面的数据。

您需要在单元格 E2 中键入要查找的值。您可以在同一工作表中的任一空白单元格内键入该公

式。 A B C D E

1 Name Dept Age Find Value

2 Henry 501 28 Mary

3 Stan 201 19

4 Mary 101 22

5 Larry 301 29

术语定义

本文使用下列术语来说明 Excel 内置函数:

术语 定义 示例

Table_Array 整个查找表。 A2:C5

Lookup_Value 要在 Table_Array 的第一列中查找的值。 E2

Lookup_Array

- 或 -

Lookup_Vector 包含可能的查找值的单元格区域。 A2:A5

Col_Index_Num Table_Array 中的应为其返回匹配值的列号。3(Table_Array

中的第三列)

Result_Array

- 或 -

Result_Vector 一个只包含一行或一列的区域。它的大小必须

与 Lookup_Array 或 Lookup_Vector 相同。C2:C5

Range_Lookup 逻辑值(TRUE 或 FALSE)。如果该值为 TRUE

或被忽略,则返回近似的匹配项。如果该值为

FALSE,则将查找完全匹配的项。 FALSE Top_Cell 这是要作为偏移量基准位置的参考位置。

Top_Cell 必须是一个单元格或一个由相邻单

元格组成的区域。否则,OFFSET 会返回 #VALUE! 错误值。

Offset_Col 这是您希望结果区域的左上角单元格偏离(向

左或向右)所参考的单元格的列数。例如,如

果 Offset_Col 参数为“5”,则会指定结果

区域中的左上角单元格在参考位置右侧第五

列处。Offset_Col 可以是正数(表示位于起

始参考位置的右侧),也可以是负数(表示位

于起始参考位置的左侧)。

函数

LOOKUP()

LOOKUP 函数可在单个行或列中查找值,并将该值与另一行或列中同一位置的值进行匹配。

下面是 LOOKUP 公式语法的示例:

=LOOKUP(Lookup_Value,Lookup_Vector,Result_Vector)

下面的公式在示例工作表中查找 Mary 的年龄:

=LOOKUP(E2,A2:A5,C2:C5)

该公式使用单元格 E2 中的值“Mary”并在查找矢量(列 A)中查找“Mary”。然后,该公式会将

该值与结果矢量(列 C)中同一行内的值进行匹配。因为“Mary”在第 4 行中,所以 LOOKUP 会

返回列 C 的第 4 行中的值 (22)。

注意:LOOKUP 函数要求对表进行排序。

有关 LOOKUP 函数的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文

章:

324986 如何在 Excel 中使用 LOOKUP 函数

VLOOKUP()

当数据以列的形式列出时,使用 VLOOKUP(即“纵向查找”)函数。该函数在最左边的列中搜索

某个值,然后将该值与同一行中指定列内的数据进行匹配。您可以使用 VLOOKUP 在已排序的

或未排序的表中查找数据。下面的示例使用含有未排序的数据的表。

下面是 VLOOKUP 公式语法的一个示例:

=VLOOKUP(Lookup_Value,Table_Array,Col_Index_Num,Range_Lookup)

下面的公式在示例工作表中查找 Mary 的年龄:

=VLOOKUP(E2,A2:C5,3,FALSE) 该公式使用单元格 E2 中的值“Mary”并在最左边的列(列 A)中查找“Mary”。然后,该公式会

将该值与 Column_Index 中的同一行中的值进行匹配。该示例使用“3”作为 Column_Index(列 C)。因为“Mary”在第 4 行中,所以 VLOOKUP 会返回列 C 中的第 4 行中的值 (22)。

有关 VLOOKUP 函数的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的

文章:

181213 如何使用 VLOOKUP 或 HLOOKUP 查找完全匹配项

INDEX() 和 MATCH()

您可以将 INDEX 函数和 MATCH 函数一起使用,以获取与使用 LOOKUP 或 VLOOKUP 相同的

结果。

下面是一个语法示例,它组合使用 INDEX 和 MATCH,以便与前面示例中

的 LOOKUP 和 VLOOKUP 产生相同的结果:

=INDEX(Table_Array,MATCH(Lookup_Value,Lookup_Array,0),Col_Index_Num)

下面的公式在示例工作表中查找 Mary 的年龄:

=INDEX(A2:C5,MATCH(E2,A2:A5,0),3)

该公式使用单元格 E2 中的值“Mary”并在列 A 中查找“Mary”。然后,它将该值与列 C 中同一

行内的值进行匹配。因为“Mary”在第 4 行中,所以该公式会返回列 C 中的第 4 行中的值 (22)。

注意:如果 Lookup_Array 中的任何单元格都不与 Lookup_Value(“Mary”)匹配,则该公式将返

回 #N/A。

有关 INDEX 函数的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

324988 XL2002:如何使用 INDEX 函数在表中查找数据

OFFSET() 和 MATCH()

您可以组合使用 OFFSET 和 MATCH 函数,以便与前面示例中的函数产生相同的结果。

下面是一个语法示例,它组合使用 OFFSET 和 MATCH,以便与 LOOKUP 和 VLOOKUP 产生相

同的结果:

=OFFSET(top_cell,MATCH(Lookup_Value,Lookup_Array,0),Offset_Col)

该公式在示例工作表中查找 Mary 的年龄:

=OFFSET(A1,MATCH(E2,A2:A5,0),2)

该公式使用单元格 E2 中的值“Mary”,并在列 A 中查找“Mary”。然后,该公式将该值与同一行

中向右两列处(列 C)的值进行匹配。因为“Mary”在列 A 中,所以该公式会返回列 C 中的第 4

行中的值 (22)。

有关 OFFSET 函数的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文

章:

324991 XL2002:如何使用 OFFSET 函数

 EXCEL数据查找 EXCEL有强大的数据处理功能,可以用它对数据进行组织和管理,当在工作中采集了大量

数据后,出于某种需要,我们希望将符合某种条件的数据提取出来,有时是一个汇总结果,

有时是所有符合条件的数据本身。很多刚接触EXCEL的朋友不知道从哪个方面入手,下面

我们通过几个实例,快速掌握这些方法。

一、通过一定条件查找,返回汇总结果

在这个销量表中,如果我们想统计出姓名为“张三”的全部销量,可以用一个函数来做公式:

=SUMIF(销量表!B:B,"张三",销量表!C:C)

这个SUMIF函数是一个条件汇总函数,它有三个参数,第一个参数是要查找的区域,在本

例中是B列,第二个参数是要查找的条件,在本例中是“张三”这个姓名,第三个参数是需要

汇总的区域。

这个公式的含义是:在“销量表”的B列查找“张三”这个内容,在B列找到后,把找到的同一

行中的C列值相加。

我们还可以用下面这个公式达到同样的效果:

=SUM(IF(销量表!B1:B100="张三",销量表!C1:C100))

这是一个数组公式,在输入完成后要按CTRL+SHIFT+ENTER组合键确认,此时会自动在

公式的两端加上一对花括号(手工输入花括号无效)。

在这个公式中用了两个函数SUM与IF,先由IF对它右边的条件“销量表!B1:B100="张三"”

做判断,这个条件同样是在销量表的B列查找“张三”,当条件成立时,就执行“销量

表!C1:C100”这个部份,即返回C列同一行中的数值,最后由SUM函数将返回的所有相符

的数值相加,得到正确结果。

第二个公式看似比第一个公式复杂,但它有一个“特殊”的作用,就是可以“多条件”查找。

再看一个例子,还是在“销量表”中,把六七月份的“张三”的销量统计出来(不要五月份的)

=SUM(IF((MONTH(销量表!A2:A100)>5)*(销量表!B2:B100="张三"),销量表!C2:C100))

这个数组公式用了两个条件,一个是A列的月份要大于5(即只要6、7月份的),另一个

条件是B列等于“张三”,只有这两条件都成立,才执行同一行中的C列汇总求和。

在这个公式中,由于要对“月份”进行计算,所以用一了个MONTH函数,它的作用是提取日期中的“月份”。

要注意一点,在SUMIF函数中可以用“整列”(即:销量表!B:B),而在SUM与IF组合的

数组公式中,不能用“整列”这个方式,只能用一个具体的区域(如:销量表!A2:A100)。

提示1:在上面几个公式中,为了方便使用,可以把“条件”放在一个固定的单元格中,然后在公式中只引用这个单元格。比如把要查找的“张三”输入到K1格中,然后把公式改成: =SUMIF(销量表!B:B,k1,销量表!C:C)

提示2:如果公式不在“销量表”中,那么公式中必须加上表格名字用以指定数据位置(如:“销

量表!B1:B100”前面的“销量表!”),如果公式就在“销量表”工作表中,则公式中不必加工作表的名字。

提示3:想达到上面的结果,还有很多其他方法,大家可根据自己的喜好选择。

二、通过条件查找,返回符合条件的内容。

在上图的表格中,每个姓名是唯一的,希望通过一个姓名查找到所需的电话号码

比如查找李四的电话号码

在F1单元格中输入一个要查找的姓名“李四”,然后在F2单元格中用公式

=VLOOKUP(F1,A:B,2,0)

只要按需要改变F1格中的姓名,就可在F2单元格中得到对应的号码。

这个公式使用了VLOOKUP函数,它有四个参数,第一个参数是要查找的值,第二个参数

是要查找的范围,第三个参数表示返回范围中的第几列内容,第四个参数如果为0,就表示

“精确查找”,如果为1就表示“模糊查找”,一般用0值居多。