函数lookup的使用方法及实例:Excel函数Lookup的使用方法及实例详解
在Excel的数据处理和分析中,查找和引用是极其常用的功能,而LOOKUP函数就是实现这一功能的利器,它能够根据给定的值,在单行或单列(查找向量)中搜索,并返回同一行或列中指定位置的值,本文将详细介绍LOOKUP函数的两种用法(向量形式和数组形式),并提供实用的实例,帮助您掌握这一强大工具。
LOOKUP函数的基本介绍
LOOKUP函数有两种主要形式:
- 向量形式:
LOOKUP(lookup_value, lookup_vector, [result_vector]) - 数组形式:
LOOKUP(lookup_value, array)
向量形式详解
向量形式允许您分别指定查找范围和结果返回范围。
lookup_value(必需): 要查找的值,可以是数字、文本、逻辑值或引用单元格,此值将在lookup_vector中搜索。lookup_vector(必需): 一维的单元格区域或数组,包含要搜索的数据,此向量必须包含文本、数字或逻辑值,且必须为升序排列(A到Z,或1到10),否则,函数可能返回错误值#N/A。result_vector(可选): 一维的单元格区域或数组,包含与lookup_vector方向相同的值,函数将返回此向量中查找成功后对应位置的值,如果省略,则使用lookup_vector本身作为结果向量。
语法要点:
lookup_vector和result_vector必须是等长的。lookup_vector必须是单行或单列。result_vector也必须是单行或单列,方向与lookup_vector一致(即如果lookup_vector是行,result_vector也应是行;反之亦然)。
向量形式的使用实例
实例1:查找产品价格
假设有以下数据:
| A列 | B列 |
|---|---|
| 产品名称 | 价格 |
| 苹果 | 5 |
| 香蕉 | 8 |
| 橙子 | 2 |
| 葡萄 | 9 |
我们想根据产品名称查找其价格。
公式:=LOOKUP(E2, A2:A5, B2:B5)
E2单元格可能包含要查找的产品名称,香蕉”。A2:A5是包含产品名称的查找向量,必须按升序排列(这里假设是升序)。B2:B5是包含对应价格的结果向量。
工作原理:
LOOKUP在A2:A5中查找E2的值。- 如果找到,它会返回
B2:B5中相同行位置的值。 E2中的值在A2:A5中不存在,LOOKUP会在找到的最大值小于E2的基础上,返回B2:B5中对应行的下一个值。E2大于A2:A5中所有值,则返回错误值#N/A。
实例2:查找员工信息(带结果向量)
数据:
| A列 | B列 | C列 |
|---|---|---|
| 员工编号 | 姓名 | 部门 |
| 1001 | 张三 | 销售部 |
| 1002 | 李四 | 财务部 |
| 1003 | 王五 | 人事部 |
查找1002号员工的姓名。
公式:=LOOKUP(1002, A2:A4, B2:B4)
1002是要查找的值。A2:A4是员工编号的查找向量(假设已排序)。B2:B4是对应姓名的结果向量。
数组形式详解
数组形式更简洁,只需提供一个查找范围(可以是行或列,也可以是二维区域),LOOKUP 会自动在第一行或第一列中查找,并返回同一数组中最后一行或最后一列中对应位置的值。
lookup_value(必需): 要查找的值,同上。array(必需): 一个区域或数组,其中包含要搜索的数据,此数组必须包含文本、数字或逻辑值,且必须按升序排列(如果查找数值,则数值需升序;如果查找文本,则按字母顺序升序)。
语法要点:
array可以是单行、单列或多列多行的区域。lookup_value必须是数值、文本、逻辑值或引用。lookup_value必须与array中第一行或第一列的数据类型兼容(不能用数字查找文本,反之亦然,除非Excel自动进行类型转换)。array必须按升序排列,否则函数可能返回错误值#N/A或错误的结果。- 查找过程:
LOOKUP首先在array的第一行中查找lookup_value,如果找到,返回同一列中最后一行的值,如果第一行中未找到,则在第一列中查找lookup_value,如果找到,返回同一行中最后一列的值,如果仍未找到,则返回#N/A。
数组形式的使用实例
实例3:查找员工部门(数组形式)
使用与实例2相同的数据:
| A列 | B列 | C列 |
|---|---|---|
| 员工编号 | 姓名 | 部门 |
| 1001 | 张三 | 销售部 |
| 1002 | 李四 | 财务部 |
| 1003 | 王五 | 人事部 |
查找1002号员工的部门。
公式:=LOOKUP(1002, A2:C4)
1002是要查找的值。A2:C4是包含员工信息的数组。
工作原理:
LOOKUP在A2:C4的第一行(即A2:B2或A2:C2,但实际是按列优先查找?注意:Excel的数组查找是按第一行和第一列的交叉来理解的,更准确地说,它先在第一行查找,如果找到,返回该行最后一列的值;如果没找到,再在第一列查找,如果找到,返回该列最后一行的值。)- 在第一行
[1001, 张三, 销售部]中查找1002,未找到。 - 在第一列
[1001, 1002, 1003]中查找1002,找到。 - 返回第一列中
1002所在行的最后一列的值,即C3单元格的值“财务部”。
实例4:查找产品信息(二维数组)
数据:
| A列 | B列 | C列 |
|---|---|---|
| 产品名称 | 价格 | 库存 |
| 苹果 | 5 | 100 |
| 香蕉 | 8 | 150 |
| 橙子 | 2 | 80 |
查找“香蕉”的价格。
公式:=LOOKUP("香蕉", A2:C3)
"香蕉"是要查找的值。A2:C3是包含产品信息的二维数组。
工作原理:
- 在第一行
[“苹果”, 5.5, 100]中查找"香蕉",未找到。 - 在第一列
[“产品名称”, “苹果”, “香蕉”]中查找"香蕉",找到。 - 返回第一列中
"香蕉"所在行的最后一列的值,即C3单元格的值8。
使用提示与注意事项
- 排序要求: 两种形式都要求查找向量或数组中的数据按升序排列,否则可能无法找到正确的匹配或返回错误结果,对于数字,1 < 2 < 3;对于文本,按字母顺序,A < B < C。
- 近似匹配:
LOOKUP函数默认执行近似匹配,如果找不到精确匹配项,它会查找小于或等于lookup_value的最大值,这在查找范围是数字或有序文本时非常有用。 - 区分大小写:
LOOKUP函数不区分大小写,查找 "Apple" 和 "apple" 结果相同。 - 结果向量方向: 使用向量形式时,确保
result_vector的方向与lookup_vector一致,否则会返回错误值。 - 数组形式的灵活性: 数组形式更简洁,但有时不如向量形式直观,尤其是在处理复杂查找逻辑时。
- 错误处理:
lookup_value大于array或lookup_vector中的所有值,LOOKUP会返回#N/A错误。
LOOKUP 函数是Excel中功能强大且实用的查找函数,无论是简单的单列查找,还是更复杂的二维数组查找,掌握其向量形式和数组形式都能极大地提高数据处理的效率,通过本文的介绍和实例,希望能帮助您熟练运用 LOOKUP 函数,解决实际工作中的查找问题。

相关文章:
文章已关闭评论!