大家好,今天来聊聊老余我个人喜欢的函数之一LOOKUP。

说起函数lookup,想必大部分的人想到的是它的查找功能。的确查找是它的强项,不过查找只是它的冰山一角。

在分享其他功能之前,来看看它是怎么查找的

1、根据客户名称查找对应的应收账款金额

excel中lookup函数应用方法详解-趣帮office教程网

图一

这是经典的查找公式:Lookup(1,0/(条件区域=条件),返回区域)

2、根据序号和客户名称查找对应的应收账款金额,序号是升序排列的

excel中lookup函数应用方法详解-趣帮office教程网

图二

这两个实例是Lookup常用的用法

其实这个函数还可以对数字取整提取不同长度的数字

案例一、

要求百位以下全部舍去,实现了百分位取整,比如数字是8632.23,达到的效果是8600。

其实向这样的取数,函数Int就可搞定

LOOKUP函数也能解决了这类问题

excel中lookup函数应用方法详解-趣帮office教程网

图三

首先说明ROW(A:A)*100这部分。它其实就是得到了一组数字。为了让大家看明白,把A:A范围给小一点,我们用=ROW(A1:A31)*100作说明:

excel中lookup函数应用方法详解-趣帮office教程网

图四

虽然单元格中只能看到一个100,实际上是31个数字,我们可以用f9功能键来看看具体内容:

excel中lookup函数应用方法详解-趣帮office教程网

图五

ROW函数用于获取单元格的行号,ROW(A1:A31)*100就是用A1到A31单元格的行号分别乘以100,得到一组百位取整的数据{100;200;300;……3000;3100}。

然后LOOKUP上场了。它要在上述得到的已经百位取整的数组中查找A1。因为数组是按升序排列的,所以查找A1的实质就是在数组中找小于等于A1的最大值。

以2517.32为例,唯有2500是小于它的最大值,因此结果就是2500

案例二:

A列有数字和文本,怎么提取开头的数字

首先我们想到的是利用快捷键CTRL E,没错这是个很好用的功能

excel中lookup函数应用方法详解-趣帮office教程网

图六

其实LOOKUP函数也能完美解决LOOKUP不是引用函数吗,怎么又可以提取数字了?

excel中lookup函数应用方法详解-趣帮office教程网

图七

解释下:LEFT函数的第二个参数使用了一个数组,ROW(1:10)相当于{1;2;3;4;5;6;7;8;9;10}。

也就是从左边开始提取1位,2位……一直到10位。因为LEFT提取的结果都是文本类型,在LEFT前面加上负号,就可以把其中的文本型数字转为数值,文字变成错误值,当查找值大于查找范围中所有数据(不管是否是升序排列)时,LOOKUP的实质就是在找最后一个数据。最后LOOKUP前面再加个负号,负负得正,也就是我们需要提取的数字。

怎么样,看完文章是不是觉得LOOKUP很强大,是不是有了初步的了解?

从不认识到了解,从了解再到掌握,这里需要大量的练习和思考。