详细的帮助文件!
本文介绍 Microsoft Excel 中 LOOKUP 函数 (函数:函数是预先编写的公式,可以对一个或多个值执行运算,并返回一个或多个值。函数可以简化和缩短工作表中的公式,尤其在用公式执行很长或复杂的计算时。)的公式语法和用法。
说明
LOOKUP 函数可从单行或单列区域 (区域:工作表上的两个或多个单元格。区域中的单元格可以相邻或不相邻。)或者从一个数组 (数组:用于建立可生成多个结果或可对在行和列中排列的一组参数进行运算的单个公式。数组区域共用一个公式;数组常量是用作参数的一组常量。)返回值。LOOKUP 函数具有两种语法形式:向量形式和数组形式。
如果需要 则参阅 用法
在单行区域或单列区域(称为“向量”)中查找值,然后返回第二个单行区域或单列区域中相同位置的值。 向量形式 当要查询的值列表较大或者值可能会随时间而改变时,使用该向量形式。
在数组的第一行或第一列中查找指定的值,然后返回数组的最后一行或最后一列中相同位置的值 数组形式 当要查询的值列表较小或者值在一段时间内保持不变时,使用该数组形式。
注释
对于详细的测试或超出函数嵌套限制的测试,还可以使用 LOOKUP 函数来代替 IF 函数。请参阅数组形式的示例。
为了使 LOOKUP 函数能够正常运行,必须按升序排列查询的数据。如果无法使用升序排列数据,请考虑使用 VLOOKUP、HLOOKUP 或 MATCH 函数。
向量形式
向量是只含一行或一列的区域。LOOKUP 的向量形式在单行区域或单列区域(称为“向量”)中查找值,然后返回第二个单行区域或单列区域中相同位置的值。当要指定包含要匹配的值的区域时,请使用 LOOKUP 函数的这种形式。LOOKUP 函数的另一种形式自动在第一行或第一列中查找。
语法
LOOKUP(lookup_value, lookup_vector, [result_vector])
LOOKUP 函数向量形式语法具有以下参数 (参数:为操作、事件、方法、属性、函数或过程提供信息的值。):
lookup_value 必需。LOOKUP 在第一个向量中搜索的值。Lookup_value 可以是数字、文本、逻辑值、名称或对值的引用。
lookup_vector 必需。只包含一行或一列的区域。lookup_vector 中的值可以是文本、数字或逻辑值。
要点 lookup_vector 中的值必须以升序排列:...,-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE。否则,LOOKUP 可能无法返回正确的值。大写文本和小写文本是等同的。
result_vector 可选。只包含一行或一列的区域。result_vector 参数必须与 lookup_vector 大小相同。
说明
如果 LOOKUP 函数找不到 lookup_value,则它与 lookup_vector 中小于或等于 lookup_value 的最大值匹配。
如果 lookup_value 小于 lookup_vector 中的最小值,则 LOOKUP 会返回 #N/A 错误值。
示例
如果将示例复制到一个空白工作表中,可能会更容易理解该示例。
显示如何复制示例?
1. 选择本文中的示例。
要点 不要选择行或列标题。
从“帮助”中选择示例
从“帮助”中选择示例
2. 按 Ctrl+C。
3. 在 Excel 中,创建一个空白工作簿或工作表。
4. 在工作表中,选择单元格 A1,然后按 Ctrl+V。
要点 若要使该示例能够正常工作,必须将其粘贴到工作表的单元格 A1 中。
5. 要在查看结果和查看返回结果的公式之间进行切换,请按 Ctrl+`(重音符),或在“公式”选项卡上的“公式审核”组中,单击“显示公式”按钮。
将示例复制到一个空白工作表中后,可以按照您的需要改编示例。
A B C
1 频率 颜色
2 4.14 红色
3 4.19 橙色
4 5.17 黄色
5 5.77 绿色
6 6.39 蓝色
7 公式 说明 结果
8 #N/A 在 A 列中查找 4.19,然后返回 B 列中同一行内的值。 橙色
9 #N/A 在 A 列中查找 5.00,与接近它的最小值 (4.19) 匹配,然后返回 B 列中同一行内的值。 橙色
10 #N/A 在 A 列中查找 7.66,与接近它的最小值 (6.39) 匹配,然后返回 B 列中同一行内的值。 蓝色
11 #N/A 在 A 列中查找 0,并返回错误,因为 0 小于 lookup_vector A2:A7 中的最小值。 #N/A
返回页首
数组形式
LOOKUP 的数组形式在数组 (数组:用于建立可生成多个结果或可对在行和列中排列的一组参数进行运算的单个公式。数组区域共用一个公式;数组常量是用作参数的一组常量。)的第一行或第一列中查找指定的值,并返回数组最后一行或最后一列内同一位置的值。当要匹配的值位于数组的第一行或第一列中时,请使用 LOOKUP 的这种形式。当要指定列或行的位置时,请使用 LOOKUP 的另一种形式。
提示 一般而言,最好使用 HLOOKUP 或 VLOOKUP 函数而不是 LOOKUP 的数组形式。LOOKUP 的这种形式是为了与其他电子表格程序兼容而提供的。
语法
LOOKUP(lookup_value, array)
LOOKUP 函数数组形式语法具有以下参数 (参数:为操作、事件、方法、属性、函数或过程提供信息的值。):
lookup_value 必需。LOOKUP 在数组中搜索的值。lookup_value 参数可以是数字、文本、逻辑值、名称或对值的引用。
如果 LOOKUP 找不到 lookup_value 的值,它会使用数组中小于或等于 lookup_value 的最大值。
如果 lookup_value 的值小于第一行或第一列中的最小值(取决于数组维度),LOOKUP 会返回 #N/A 错误值。
array 必需。包含要与 lookup_value 进行比较的文本、数字或逻辑值的单元格区域。
LOOKUP 的数组形式与 HLOOKUP 和 VLOOKUP 函数非常相似。区别在于:HLOOKUP 在第一行中搜索 lookup_value 的值,VLOOKUP 在第一列中搜索,而 LOOKUP 根据数组维度进行搜索。
如果数组包含宽度比高度大的区域(列数多于行数),LOOKUP 会在第一行中搜索 lookup_value 的值。
如果数组是正方的或者高度大于宽度(行数多于列数),LOOKUP 会在第一列中进行搜索。
使用 HLOOKUP 和 VLOOKUP 函数,可以通过索引以向下或遍历的方式搜索,但是 LOOKUP 始终选择行或列中的最后一个值。
要点 数组中的值必须以升序排列:...,-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE。否则,LOOKUP 无法返回正确的值。大写文本和小写文本是等同的。
示例
示例 1
如果将示例复制到一个空白工作表中,可能会更容易理解该示例。
显示如何复制示例?
1. 选择本文中的示例。
要点 不要选择行或列标题。
从“帮助”中选择示例
从“帮助”中选择示例
2. 按 Ctrl+C。
3. 在 Excel 中,创建一个空白工作簿或工作表。
4. 在工作表中,选择单元格 A1,然后按 Ctrl+V。
要点 若要使该示例能够正常工作,必须将其粘贴到工作表的单元格 A1 中。
5. 要在查看结果和查看返回结果的公式之间进行切换,请按 Ctrl+`(重音符),或在“公式”选项卡上的“公式审核”组中,单击“显示公式”按钮。
将示例复制到一个空白工作表中后,可以按照您的需要改编示例。
A B C
1 公式 说明 结果
2 3 在数组的第一行中查找“C”,查找小于或等于它的最大值(“c”),然后返回最后一行中同一列内的值。 3
3 2 在数组的第一行中查找“bump”,查找小于或等于它的最大值(“b”),然后返回最后一列中同一行内的值。 2
示例 2
下面的示例使用一个数字数组为测试分数指定字母等级。
如果将示例复制到一个空白工作表中,可能会更容易理解该示例。
显示如何复制示例?
1. 选择本文中的示例。
要点 不要选择行或列标题。
从“帮助”中选择示例
从“帮助”中选择示例
2. 按 Ctrl+C。
3. 在 Excel 中,创建一个空白工作簿或工作表。
4. 在工作表中,选择单元格 A1,然后按 Ctrl+V。
要点 若要使该示例能够正常工作,必须将其粘贴到工作表的单元格 A1 中。
5. 要在查看结果和查看返回结果的公式之间进行切换,请按 Ctrl+`(重音符),或在“公式”选项卡上的“公式审核”组中,单击“显示公式”按钮。
将示例复制到一个空白工作表中后,可以按照您的需要改编示例。
A B C
1 分数
2 45
3 90
4 78
5 公式 说明 结果
6 #N/A 在数组的第一行中查找 A2 中的值 (45),查找小于或等于它的最大值 (0),然后返回数组最后一行中同一列内的值。 F
7 #N/A 在数组的第一行中查找 A3 中的值 (90),查找小于或等于它的最大值 (90),然后返回数组最后一行中同一列内的值。 A
8 F 在数组的第一行中查找 A4 中的值 (78),查找小于或等于它的最大值 (70),然后返回数组最后一行中同一列内的值。 C
9 #N/A 在数组的第一行中查找 A2 中的值 (45),查找小于或等于它的最大值 (0),然后返回数组最后一行中同一列内的值。 F
10 #N/A 在数组的第一行中查找 A3 中的值 (90),查找小于或等于它的最大值 (90),然后返回数组最后一行中同一列内的值。 A-
11 F 在数组的第一行中查找 A4 中的值 (78),查找小于或等于它的最大值 (77),然后返回数组最后一行中同一列内的值。 C+
LOOKUP 一般理解为在一个有规律排序的表内,按要求找到数据,返回相应行的另一数据。如=LOOKUP(c1,$A$1:$A$6,$B$1:$B$6)
在A1 A6内找到包含c1的数据,找到后返回对应的B1 B6 的单元格的数据
vlookup
hlookup
分别书列查找返回数据,行查找返回数据。
=VLOOKUP(D1,$A$1:$B$6,2,) 的意思是在a1 :b6 区域内查找D1单元格的值,找到后,返回此区域第二列的数据。
=HLOOKUP(A6,$A$1:$G$4,2)的意思是在a1 :g4 区域内查找a1单元格的值,找到后,返回此区域第二行的数据。
可能一句两句说不出来
你点击命令行左边的“fx”按钮,找到LOOKUP函数,点击下边的“关于此函数的帮助”,那里边有例子,还有它的语法,你看看就知道了
使用方法:
(1)向量形式:公式为 = LOOKUP(lookup_value,lookup_vector,result_vector)式中 lookup_value—函数LOOKUP在第一个向量中所要查找的数值,它可以为数字、文本、逻辑值或包含数值的名称或引用;
lookup_vector—只包含一行或一列的区域lookup_vector 的数值可以为文本、数字或逻辑值;
result_vector—只包含一行或一列的区域其大小必须与 lookup_vector 相同。
(2)数组形式:公式为= LOOKUP(lookup_value,array)式中 array—包含文本、数字或逻辑值的单元格区域或数组它的值用于与 lookup_value 进行比较。
例如:LOOKUP(5.2,{4.2,5,7,9,10})=5。
注意:lookup_vector的数值必须按升序排列,否则函数LOOKUP不能返回正确的结果。文本不区分大小写。如果函数LOOKUP找不到lookup_value,则查找lookup_vector中小于或等于lookup_value的最大数值。如果lookup_value小于lookup_vector中的最小值,函数LOOKUP返回错误值#N/A。