Excel VLOOKUP 在所有行中返回相同的值
Posted
技术标签:
【中文标题】Excel VLOOKUP 在所有行中返回相同的值【英文标题】:Excel VLOOKUP returning same value in all rows 【发布时间】:2017-05-23 12:07:02 【问题描述】:vlookup 功能似乎已损坏。它为所有查找返回相同的值,但它不应该。
我是这样设置的:
=VLOOKUP(A3, Asset_Mapping!A$2:B$673, 1)
查找值在 B 列,结果在 A 列。
我使用 $,因此当我将公式粘贴到行中时,行不会自动更新为 A3:B674 等。但是,即使我手动将该公式输入到下一行,它也找不到正确的值。
如果我删除了“$”,则会为值落在修改范围内的第一行找到正确的值(例如 Asset_Mapping!A3:B674),但最终如预期的那样,由于范围无效,它会停止查找值.
我在这里做错了什么?我已将公式设置为自动计算。
【问题讨论】:
将 false 参数添加到您的公式中。这将返回完全匹配而不是它到达的第一个部分匹配=VLOOKUP(A3, Asset_Mapping!A$2:B$673, 2, FALSE)
工作吗?
是的,它是 FALSE 参数。谢谢大家!
【参考方案1】:
如果不对您的实际数据进行测试,则很难确认这是否可行,但添加了 false 参数。这将找到完全匹配,而不是第一个部分匹配。
=VLOOKUP(A3, Asset_Mapping!A$2:B$673, 1, false)
整理要点,阐明公式
参数一:你要找的值
参数2:有数据的表。第一列是您要查找的值。
参数3:要显示的值的列号。
参数4:如果要完全匹配或部分匹配。
@Jeeped 强调对数据进行排序以获得更可靠的结果。好建议。
【讨论】:
我发现提及部分(aka 近似或二分搜索)匹配只能返回排序数据的可靠结果是很有用的。 谢谢!我从来没有这样做过,忘记了 FALSE 参数!谢谢!【参考方案2】:Andres 的想法是正确的,但有一种更快的方法可以解决问题。
如果它在您的整个范围内一遍又一遍地返回相同的值,您可能将计算选项设置为“手动”。
进入顶部功能区的公式并选择计算选项。在那里,您可以将计算方法更改为“自动”。
【讨论】:
Office for Mac 偶尔会出现这个问题,谢谢!【参考方案3】:查找值也必须在第一列。
【讨论】:
【参考方案4】:查找值在 B 列,结果在 A 列。
VLOOKUP 总是在最左边的列中查找,并从指定的列号返回一个值。如果要反转查找/返回顺序,请使用 INDEX(..., MATCH(...))
=INDEX(Asset_Mapping!A$2:A$673, MATCH(A3, Asset_Mapping!B$2:B$673, 0))
请注意,您使用的是排序的二进制查找;我已将其更改为不需要排序数据的完全匹配查找。
【讨论】:
【参考方案5】:以防万一为该主题添加解决方案。 不知道为什么在大表中 Vlookup 和 Index+Match 往往只在所有其他单元格中显示第一个结果的值。
在我的情况下,为了解决这个问题,在我复制整个范围内的公式后,我选择包含它的任何单元格,按 F2,然后按 Enter。它有点擅长处理所有事情。
【讨论】:
【参考方案6】:我已经为此工作了一周,但没有任何结果。我已经为另一个公寓社区创建了相同的电子表格,没有任何问题,但由于某种原因,我无法在此电子表格中获得正确的结果。我也尝试过 vlookup,但这也无济于事。还有什么建议吗?
公式
结果和查找向量
【讨论】:
天哪,我想通了。所以如果其他人有这个问题,问题是我复制并粘贴了数据,所以查找向量数据的格式都错误,所以我必须单击查找向量中的每个单元格,然后按 Enter。这重新格式化了数据,以便可以正确查找。这实际上花了我 3 天的时间才弄清楚。大声笑 请将其添加到您的答案中...并使其看起来像一个答案(删除问题部分)以上是关于Excel VLOOKUP 在所有行中返回相同的值的主要内容,如果未能解决你的问题,请参考以下文章