Excel Vlookup 错误

Excel Vlookup 错误

我正在使用 Vlookup 示例=VLOOKUP(E10,A18:B50,2)来选择产品描述,但它对某些行有效,但对其他行无效。

当它不起作用时,它倾向于选择产品的最后描述(即字段 A18 将正确选择字段 B18 等等,直到它到达 A25,而 A25 将错误地选择 B50 等等)。产品编号有点复杂,例如

ABD10050CNR-XX (滑雪板041)

描述

工作台管道内/外角。

这是不是因为产品编号和描述太复杂/混乱而不起作用?

答案1

尝试

=VLOOKUP(E10,A18:B50,2,False) 

如果省略第四个参数,则默认为 true,并且需要对查找列进行排序。请参阅 Excel 帮助:

如果 range_lookup 为 TRUE 或省略,则返回精确或近似匹配。如果未找到精确匹配,则返回小于 lookup_value 的下一个最大值。

[...]

如果 range_lookup 参数为 FALSE,VLOOKUP 将仅查找完全匹配项。如果 table_array 的第一列中有两个或多个值与 lookup_value 匹配,则使用找到的第一个值。如果未找到完全匹配项,则返回错误值 #N/A。

因此,省略第四个参数绝不会返回错误值,但如果数据未排序,则可能会返回错误结果。如果您想要精确匹配,请使用第四个参数并将其设置为False

答案2

数组范围真的是 A18:B50 吗?通常,每当我使用 VLOOKUP 时,我都会执行类似 $A$18:$B$50 的操作,这样当我复制并粘贴公式时,它仍会保留数组中的值。您可能会遇到这样的问题:A25 的值在数组中较高,但找不到,因为数组在您复制和粘贴时会动态变化。

答案3

VLookup 的最严格规则是,包含该表的表必须按照所用键正确排序。如果表未排序,则将提供不大于搜索值的最后一个表值。

示例表已排序:

0 红色
1蓝色
3 绿色

如果搜索的值为“2”且缺失,则“3”出现位置的下一个较低值将提供蓝色作为答案。

示例表未排序:

1 蓝色
0 红色
3 绿色

如果搜索的值为“2”且缺失,则“3”出现位置的下一个较低值将提供红色作为答案。

答案4

另一个可能的原因是搜索的文本包含波浪符号 ( ~),它是 VLOOKUP 的转义字符,因此可能找不到任何内容,或者找不到您期望的内容。

请参阅此其他内容中的解释和解决方案超级用户问题

相关内容