excel的lookup函数出错

lookup函数为=LOOKUP(SMALL(B6:G6,1),B6:G6,B4:G4),B6:G6函数为=LOOKUP(B1,辅助百分制转换!A2:A41,辅助百分制转... lookup函数为=LOOKUP(SMALL(B6:G6,1),B6:G6,B4:G4),
B6:G6函数为=LOOKUP(B1,辅助百分制转换!A2:A41,辅助百分制转换!C2:C41),=LOOKUP(B1,辅助百分制转换!A2:A41,辅助百分制转换!D2:D41),递推。
B4:G4为语文 数学 英语 物理 化学 生物
运行时显示#n/a,求值时在LOOKUP(0.62,B6:G6,B4:G4)步卡住(0.62为SMALL(B6:G6,1)的值)。
请问该如何解决?
呃……能帮忙讲一下这个公式是什么意思吗?
展开
 我来答
她是我的小太阳
高粉答主

2015-10-30 · 醉心答题,欢迎关注
知道顶级答主
回答量:5.1万
采纳率:83%
帮助的人:9146万
展开全部

LOOKUP的运行原理分析

LOOKUP函数以高效的运算速度被EXCEL函数爱好者喜欢,而且LOOKUP在日常实际工作中特别是数组公式,内存数组中应用广泛。

LOOKUP(lookup_value,lookup_vector,result_vector)

lookup_value意思为要在数据表中查找的“值”。

lookup_vector意思为要查找的值得“数据表”。

result_vector意思为通过数据表想要得到的"值“。

LOOKUP的查询方式为二分法查询,具体的查询原理看下图。

下面用例子给大家具体讲一下LOOKUP的具体应用与原理:

以一个学生成绩表为例进行分析,查询一下英语成绩为98的学生姓名:

F2的公式为=LOOKUP(D2,B2:B15,C2:C15)

意思为从B2:B15列里面找D2,并返回C2:C15相对应行的值

这里的结果是"刘备"肯定会让好多人感到困惑,明明有98对应的是“王思”怎么会返回“刘备”呢?那么看往下看,就会彻底明白的。

对LOOKUP的查找方法进行分解——第一次二分法查询:

98会跟第7行的数据78进行比较,因为98>78,所以返回第8到第14行的值。

第二次二分法查询:

98会跟第4行的数据66进行比较,因为98>66,所以返回第5到第7行数据。

第三次二分法查询:

98会跟第2行的数据87进行比较,因为98>87所以返回第3数据。

因为98比91大,所以就向下近似取比98小的最近的值——91所对应的名字。

总结了一个知识点:

1、LOOKUP要查询一个明确的值或者范围的时候(也就是知道在查找的数据列是肯定包含被查找的值),查询列必须按照升序排列。(在EXCEL帮助文档里也是这么说的)

如果所查询值为明确的值,则返回值对应的结果行,如果没有明确的值,则向下取的于所查询值最近的值。

2、查找一个不确定的值,如查找一列数据的最后一个数值,在这种情况下,并不需呀升序排列。

热情的橘子醬8D544
2010-12-25 · TA获得超过6.9万个赞
知道大有可为答主
回答量:2.6万
采纳率:57%
帮助的人:1亿
展开全部
B6:G6没有按升序排列,将公式=LOOKUP(SMALL(B6:G6,1),B6:G6,B4:G4),改为:
=LOOKUP(1,0/(SMALL(B6:G6,1)=B6:G6),B4:G4)
没有原数据表,只能自己试试,也许还有其它原因。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式