简单的Excel vlookup不起作用

我是一个很less使用Excel的程序员。 我现在试图做一个简单的查找,它不会工作。 我已经阅读了几个在线教程和故障排除指南,没有骰子。 这是我得到的:

在这里输入图像说明

正如你所看到的,B8中的公式是=VLOOKUP(A8,$A$1:$B$5,1,FALSE)

我很困惑为什么这不起作用。 我已经绝对validation查找表(A1-B5)中的每个单元格都不包含任何前导/尾随空格,不包含特殊字符等。实际上,我手动input这些单元格,而不是粘贴它们。 同样的颜色的小列(A8-A11)。 这是最简单的情况。 例如,我希望B8中的公式在A8中查看“红色”,在查找表中查找红色,并返回红色的数字,即“3”。 我想要一个精确的匹配。

如果你想知道为什么我试图在一个简单而无用的情况下,这是因为我开始在一个更复杂的工作表,作为准备从Excel导入数据的一部分,到处都是#N / A,所以我开始了一个新的工作表,并做了这个简单的例子,并得到了同样的错误结果。

我究竟做错了什么?

使用index()match()可以更好地服务,因为在vlookup() ,您试图查找的值必须位于最左侧的列中。

match()将返回数字或索引(在你的情况下,行号),在这个数字或索引中find你正在查找的值,并且可以给index()返回一些与之相关的值索引(在这种情况下,该行中的颜色编号)。 它最终会看起来像这样:

 =index($a$1:$a$5, match(a8, $b$1:$b$5, 0)) 

我发现查找值(颜色)必须位于左列,ID必须位于右列。

VLOOKUP不起作用,这个function看起来是向右的。 这就是为什么你需要交换数字和颜色。