Excel VLOOKUP,其中键不在第一列

标签 excel spreadsheet vlookup libreoffice

“查找值所在的范围。请记住,查找值应始终位于该范围的第一列中,VLOOKUP 才能正常工作。例如,如果您的查找值位于单元格 C2 中,则您的范围应从与 C。”

但有时我希望能够进行双向查找。即,使用 A 列中的键查找以获取 B 列中的值,同时在其他公式中,查找 B 中的值以获取 A 中的值。

我知道的唯一方法是添加一个镜像 A 的列 C,然后使用 AB 进行第一次查找,使用 BC 进行第二次查找。但必须有一些更清洁的解决方案。是否有某种方法强制 VLOOKUP 使用第一个列以外的不同列来查找键值,或者是否有不同的函数可以实现等效的功能?

顺便说一句,我问的是 Excel,但我实际上使用的是 LibreOffice。想必这些功能应该是相同的,但最好也能在 LibreOffice 中使用。

最佳答案

INDEX/MATCH将执行任何方向的搜索。

对于 B --> A 的示例:

=INDEX(A:A,MATCH(yourCriteria,B:B,0))

MATCH 返回匹配的行号。第三个标准 0 是可选的。对于 VLOOKUP 的第四个条件,0FALSE 相同,因为它查找完全匹配。

默认值为1,对数据进行排序后,它将返回小于或等于条件的匹配项,如 VLOOKUP 的 TRUE。

从中,INDEX 找到并返回正确的值。

<小时/>

引入动态数组公式XLOOKUP我们可以使用:

=XLOOKUP(yourCriteria,B:B,A:A,"",0)

关于Excel VLOOKUP,其中键不在第一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38641040/

相关文章:

vba - 枚举计算机上设置的 DSN 列表

excel - 我可以在 SUMProduct 中使用 INDIRECT 吗?

regex - 如何使用数据验证,数字必须以7开头

excel - 在Excel ComboBox中动态设置ListFillRange

excel - 仅当两个单元格都不是数组公式为空白时才执行计算?

excel - 从另一列中查找文本并将其替换为相邻值

python - Pandas相当于一对多关系的vlookup,返回一个结果

excel - VBA VLookUp-不起作用,但没有错误

c - 我想在 excel vba 中复制我在 c 中的嵌套 for 循环

ruby-on-rails - Ruby 电子表格引擎的自然顺序重新计算