excel - LOOKUP 函数给出奇怪的结果

标签 excel indexing excel-formula excel-2007 worksheet-function

在 Excel 中使用 LOOKUP 我想显示得分最高但结果很奇怪的单元格。

Example: my Excel table:

example : my excel table

从该表中,我想确定谁得分最高,我使用以下代码:

for biggest score no 1 "=LOOKUP(MAX(C4:C8),C4:C8,B4:B8)"
for biggest score no 2 "=LOOKUP(LARGE(C4:C8,2),C4:C8,B4:B8)"
for biggest score no 3 "=LOOKUP(LARGE(C4:C8,3),C4:C8,B4:B8) "

结果很奇怪:
for biggest score no 1 it show "mordi"
for biggest score no 2 it show "mordi"
for biggest score no 3 it show "ngun"

谁能纠正我,我是否使用了错误的功能?

最佳答案

你的第一个公式正在做的是找到 5在 C4:C8 中,然后寻找 5在一个不按升序排列的列表中。搜索是二进制的 - 实际上它比较 5中点3所以然后忘记了54因为它期望 53 之后所以只在范围的后半部分继续搜索(再次将其分成两部分)。它没有在那里找到它,因此默认(也许不是真的故意)最后一个条目(即 1 )然后在 B 列中返回相应的值。

我建议为所有三个“等级”使用一个公式,并在公式之外指定“等级”,例如 1在 G4 中,2在 G5 和 3在 G6。然后申请:

=INDEX(B$4:B$8,MATCH(LARGE(C$4:C$8,G4),C$4:C$8,0))

这应该返回 johan复制下来时aan然后 ngun .

它像您一样使用 LARGE,但在 MATCH 函数中查找所需分数在 ColumnC 中的相对位置,然后返回 ColumnB 范围内相同相对位置的内容。

VLOOKUP 不适合,因为结果在 table_array 的左侧。

如果分数不是相反的“排名”,可能更容易看到正在发生的事情。

关于excel - LOOKUP 函数给出奇怪的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33947826/

相关文章:

PostgreSQL 重音 + 不区分大小写的搜索

excel - excel中如何保持一个变量不变而另一个变量随行变化

excel - 计算非空白单元格以进行平均计算(不在范围内)

excel - 如何选择表格列中最后一个填充的单元格

python - 如何编写 for 循环将 Excel 文件读入 Python

vba - Excel VBA 自动筛选添加空行

excel - 按钮上显示的文本 Excel 宏

vba - 在 VBA (excel) 中循环行的最有效/最快的方法是什么?

c - 文字字符串索引是标准 C 吗?

sqlite - 多列索引是否也适用于单列选择?