如何在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值居多。