Excel 键不在第一列的 VLOOKUP

Excel VLOOKUP where the key is not in the first column

"The range where the lookup value is located. Remember that the lookup value should always be in the first column in the range for VLOOKUP to work correctly. For example, if your lookup value is in cell C2 then your range should start with 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 return是匹配的行号。 0 的第三个条件是可选的。对于 VLOOKUP 的第四个条件,0FALSE 相同,因为它查找完全匹配。

默认为 1 数据排序后它将 return 小于或等于条件的匹配项,如 VLOOKUP 的 TRUE。

从中 INDEX 发现 return 是正确的值。


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

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