使用LOOKUP函数实现无序查询

时间:2023-07-16 05:24:23 

LOOKUP函数有一个经典的条件查找解法,通用公式基本可以写为:

LOOKUP(2,1/(条件),查找数组或区域)

LOOKUP(1,0/(条件),查找数组或区域)

很多初学者对此感觉非常诧异就,主要疑惑有:

1、公式中的2、1、0等数字有什么含义,明明在查找条件与这3个数字根本毫无联系,怎么能得到正确结果?

2、明明LOOKUP函数说明需要“升序”查找,否则可能无法返回正确的值,上面这种解法又是如何得改变这一说法呢?

3、据说LOOKUP函数的查找顺序是“二分法”,并且有流程图可循,是否可以结合此例进行讲解?

【函数帮助信息摘录】

语法:LOOKUP(lookup_value, lookup_vector, result_vector)

1、[要点] lookup_vector 中的值必须以升序排列:…,-2, -1, 0, 1, 2, …, A-Z, FALSE, TRUE。否则,LOOKUP 可能无法返回正确的值。大写文本和小写文本是等同的。

2、如果 LOOKUP 函数找不到 lookup_value,则它与 lookup_vector 中小于或等于 lookup_value 的最大值匹配。

3、如果 lookup_value 小于 lookup_vector 中的最小值,则 LOOKUP 会返回 #N/A 错误值。

【释疑】简要地说,从逻辑推理来看:

1、首先,条件是一组逻辑判断的值或逻辑运算得到的由TRUE和FALSE组成或者0与非0组成的数组,因而:1/(条件)的作用是用于构建一个由1或者#DIV!0错误组成的值。

2、根据LOOKUP函数说明中的这一条:

如果 LOOKUP 函数找不到 lookup_value (即:2),则它与 lookup_vector 中小于或等于 lookup_value 的最大值(即:1)匹配。

也就是说,要在一个由1和#DIV!0组成的数组中查找2,肯定找不到2,因而将返回小于或等于2的最大值(也就是1)匹配。

为什么要用2来查找1或用1来查找0呢?因为如果有多个与第1参数相等的值,则Lookup就不一定返回“最后一个”所对应的记录,所以必须养成一个良好习惯,

而不要用:LOOKUP(1,1/(条件),……,或LOOKUP(,0/(条件),……

3、如果有多个满足条件的纪录,为何只返回最后一个,而不是第一个或其他呢?这个解释就需要二分法流程图的模拟了。而对于一般使用者来说,只需要记住“查找满足条件的最后一个记录”可以使用通用公式

LOOKUP(2,1/(条件),查找数组或区域)

LOOKUP(1,0/(条件),查找数组或区域)

标签:函数,数组,条件,查找,Excel函数
0
投稿

猜你喜欢

  • wps表格技巧之怎么巧妙快速删除多余空行

    2023-01-10 16:52:49
  • 如何从wps绘制的矩形中减去两个角?

    2022-12-16 16:46:11
  • word图片格式怎样设置jpg格式

    2022-05-29 11:35:35
  • win7蓝牙驱动安装失败解决方法

    2023-11-07 14:04:30
  • temp.exe是什么进程

    2022-08-21 11:47:36
  • PDF文档怎么删除链接?闪电PDF编辑器删除链接的方法

    2023-07-07 13:49:54
  • 如何利用Word制作名片 Word制作名片实例教程

    2023-02-06 15:24:20
  • win7系统打开IE浏览器提示“禁用的加载项,网页内容无法显示”的故障分析及解决方法

    2023-09-08 16:47:28
  • Win7打开网上邻居反应很慢的解方法

    2022-05-15 18:52:20
  • Win10如何使用自带压缩、解压zip压缩文件功能

    2023-08-15 21:04:02
  • 如何关闭win10系统的WMI服务器?

    2023-09-18 20:43:35
  • Win10商店应用更新后出错怎么办? SD卡必须是NTFS格式

    2022-02-19 17:33:52
  • 如何利用word书签功能快速精准定位到文档中的指定位置

    2023-04-04 16:59:14
  • Win10如何卸载内存驱动程序以解决突如其来的问题

    2022-02-27 08:32:34
  • Excel函数是什么?

    2022-12-20 19:05:47
  • Win10系统SysMain服务是什么?Win10系统SysMain能不能禁用?

    2023-01-16 00:20:02
  • excel打不开怎么办

    2023-01-07 19:24:48
  • win10麦克风没有声音怎么解决 win10系统说话麦克风没声音的解决办法

    2023-03-04 17:36:45
  • wps如何将文字变成图片保存

    2022-12-23 15:18:16
  • 如何快速选定Excel区域

    2023-03-16 09:28:27
  • asp之家 电脑教程 m.aspxhome.com