lookup无序查找_学习LOOKUP 函数实现无序查询

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

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/(

条件

),

查找数组或区域

)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值