Excel中的LOOKUP函数是一个强大的查找和引用工具,它可以根据给定的查找值在单行或单列中查找,并返回同一行或列中另一个位置的值。以下是LOOKUP函数的两种主要语法形式及其使用示例:
向量形式
语法:
```excel
=LOOKUP(lookup_value, lookup_vector, [result_vector])
```
参数说明:
`lookup_value`:要查找的值,可以是数字、文本、逻辑值或包含数值的名称或引用。
`lookup_vector`:只包含一行或一列的区域,其数值可以为文本、数字或逻辑值。
`result_vector`(可选):只包含一行或一列的区域,其大小必须与`lookup_vector`相同。
示例:
假设有一个成绩表在B2:D7区域,要查找学生A的成绩:
```excel
=LOOKUP(M2, B2:D7, C2:D7)
```
数组形式
语法:
```excel
=LOOKUP(lookup_value, array)
```
参数说明:
`lookup_value`:要查找的值,可以是数字、文本、逻辑值或包含数值的名称或引用。
`array`:包含文本、数字或逻辑值的单元格区域或数组,用于与`lookup_value`进行比较。
示例:
假设有一个数组{4.2, 5, 7, 9, 10},要查找数值5:
```excel
=LOOKUP(5.2, {4.2, 5, 7, 9, 10})
```
注意事项
当使用向量形式时,`lookup_vector`必须按升序排序。
当使用数组形式时,`array`的第一行或第一列用于查找,第二行或第二列用于返回结果。
逆向查询
LOOKUP函数也支持逆向查询,通过调整公式中的参数,可以实现不同条件的数据查找。例如,要根据B列的值查找对应的销售经理:
```excel
=LOOKUP(1, 0/(B2:B10=C2:C10), B2:B10)
```
多条件查询
对于多条件查询,可以使用以下公式:
```excel
=LOOKUP(1, 0/((E2=B2:B10)*(F2=C2:C10)), A2:A10)
```
查找最后一条符合条件的记录
例如,查找A产品的最后一次入库单价:
```excel
=LOOKUP(1, 0/(C5:C10=B13), D5:D10)
```
指定区域最后一个非空值查找
例如,在第16行查找每个人最后一次还款日期:
```excel
=LOOKUP(1, 0/(B2:B13<>""), A2:A13)
```
模糊查找
例如,根据提供的城市从上表中查找该市名的第2列的值:
```excel
=LOOKUP(1, 0/(C:C="城市名"), B:B)
```
通过这些示例和说明,您可以根据具体需求选择合适的LOOKUP函数形式,实现高效的数据查找和引用。