lookup函数用法及实例:Excel Lookup函数用法详解与实例解析
在Excel的数据处理和分析工作中,查找和引用数据是极其常见的需求。LOOKUP 函数就是Excel提供的一个强大工具,用于在单行或单列(称为“向量”)中查找值,并返回同一位置的另一个值;或者在区域(称为“数组”)中查找值,并返回找到的值或指定的值,掌握 LOOKUP 函数,能极大提高数据处理的效率。
本文将详细介绍 LOOKUP 函数的两种用法,并通过实例来说明其具体应用。
LOOKUP 函数的基本概念
LOOKUP 函数有两种语法形式:
- 向量形式:
LOOKUP(lookup_value, lookup_vector, [result_vector]) - 数组形式:
LOOKUP(lookup_value, array)
lookup_value 是要在 lookup_vector(向量形式)或 array(数组形式)中查找的值。
向量形式的 LOOKUP 函数用法
向量形式的 LOOKUP 函数需要提供三个参数:
- lookup_value: 要查找的值,可以是数字、文本、逻辑值或其他Excel函数返回的值。
- lookup_vector: 一个单行或单列的区域或数组,其中包含要搜索的
lookup_value,这个向量必须是 排序 过的(升序),否则函数可能无法正确返回结果。lookup_vector中的元素类型必须与lookup_value匹配(如果lookup_value是文本,lookup_vector中的元素最好是文本或能被正确比较的值)。 - result_vector (可选): 一个与
lookup_vector大小相同的单行或单列区域或数组,从中返回结果,如果省略,则使用lookup_vector本身作为结果向量。
工作原理: 函数在 lookup_vector 中按升序查找 lookup_value,如果找到精确匹配,则返回 result_vector 中相同位置的元素,如果找不到精确匹配,则查找小于 lookup_value 的最大值,并返回 result_vector 中对应位置的元素。lookup_value 是逻辑值 TRUE 或 FALSE,则会进行特殊处理(通常不推荐用于查找)。
实例解析:员工信息查询
假设有以下员工信息表(A列是员工编号,B列是员工姓名,C列是部门):
| A | B | C |
|---|---|---|
| 1001 | 张三 | 销售部 |
| 1002 | 李四 | 财务部 |
| 1003 | 王五 | 人事部 |
| 1004 | 赵六 | 技术部 |
需求: 根据员工编号查找对应的部门。
公式:=LOOKUP(A2, A$1:A$4, C$1:C$4)
解释:
A2是要查找的员工编号。A$1:A$4是查找向量,包含所有员工编号,注意使用绝对引用 确保公式向下拖动时查找范围不变。C$1:C$4是结果向量,包含所有部门信息。
结果: 如果单元格A2输入 1002,公式将返回 财务部。
数组形式的 LOOKUP 函数用法
数组形式的 LOOKUP 函数更简洁,只需要两个参数:
- lookup_value: 要查找的值。
- array: 一个区域或数组,其中包含要搜索的
lookup_value,这个区域不需要排序。
工作原理: 函数在 array 中查找 lookup_value,如果找到精确匹配,则返回 array 中该元素所在行的 最后一列 的值,如果找不到精确匹配,则查找大于 lookup_value 的最小值,并返回该最小值所在行的 最后一列 的值。lookup_value 是逻辑值 TRUE 或 FALSE,则会进行特殊处理(通常不推荐用于查找)。
注意: 数组形式的 LOOKUP 函数要求 array 必须是 二维的(即至少有一行或一列),lookup_value 必须是 数字、文本或逻辑值,不能是错误值或未定义的名称。
实例解析:产品销售统计
假设有以下销售数据表(A列是产品名称,B列是1月销量,C列是2月销量,D列是3月销量):
| A | B | C | D |
|---|---|---|---|
| 苹果 | 100 | 150 | 200 |
| 香蕉 | 200 | 180 | 220 |
| 橙子 | 120 | 130 | 140 |
需求1: 查找“香蕉”在3月份的销量。
公式:=LOOKUP("香蕉", A$1:A$3, D$1:D$3)
解释:
"香蕉"是要查找的产品名称。A$1:A$3是查找向量(产品名称列)。D$1:D$3是结果向量(3月销量列)。
结果: 返回 220。
需求2: 查找“葡萄”在3月份的销量(假设没有葡萄数据)。
公式:=LOOKUP("葡萄", A$1:A$3, D$1:D$3)
解释:
A$1:A$3中没有“葡萄”。- 函数会查找大于“葡萄”的最小值,由于“葡萄”的拼音是 “pu”,而“苹果”是 “ping”,“香蕉”是 “xiang”,“橙子”是 “cheng”,在拼音排序下,“葡萄”是最大的,函数会返回
D$1:D$3中对应“葡萄”位置的值,即D$3的值140,这通常不是我们想要的,但符合函数逻辑。
改进: 对于需求2,如果希望返回错误或特定值(如“未找到”),可以结合 IF 和 ISNA 函数进行判断,但这超出了 LOOKUP 函数本身的功能。
总结与对比
- 向量形式: 需要排序查找向量,可以指定查找和返回的向量,灵活性高,但需要确保查找向量有序。
- 数组形式: 不需要排序,查找和返回都在同一个二维区域(行和列)中,查找向量是区域的第一行,结果向量是区域的最后一列,简洁,但查找逻辑略有不同(基于行)。
选择哪个版本?
- 如果需要查找的值在有序的列表中,并且需要从不同的列返回结果,向量形式更直接。
- 如果数据是按行排列的(第一行是标题,下面的数据是按行排列的),或者希望简化公式,数组形式通常更方便。
注意事项:
- 确保
lookup_value和lookup_vector或array中的元素类型兼容。 - 数组形式的
LOOKUP对查找值的类型和大小写不敏感(文本比较时忽略大小写)。 - 理解函数的查找逻辑(精确匹配、小于/大于查找)对于得到正确结果至关重要。
通过以上介绍和实例,相信您对 LOOKUP 函数的用法有了更深入的了解,熟练运用它,将使您的Excel数据处理工作更加得心应手。

文章已关闭评论!










