“查找值所在的范围。请记住,查找值应始终位于该范围的第一列中,VLOOKUP 才能正常工作。例如,如果您的查找值位于单元格 C2 中,则您的范围应从与 C。”
但有时我希望能够进行双向查找。即,使用 A 列中的键查找以获取 B 列中的值,同时在其他公式中,查找 B 中的值以获取 A 中的值。
我知道的唯一方法是添加一个镜像 A 的列 C,然后使用 AB 进行第一次查找,使用 BC 进行第二次查找。但必须有一些更清洁的解决方案。是否有某种方法强制 VLOOKUP 使用第一个列以外的不同列来查找键值,或者是否有不同的函数可以实现等效的功能?
顺便说一句,我问的是 Excel,但我实际上使用的是 LibreOffice。想必这些功能应该是相同的,但最好也能在 LibreOffice 中使用。
最佳答案
对于 B --> A 的示例:
=INDEX(A:A,MATCH(yourCriteria,B:B,0))
MATCH 返回匹配的行号。第三个标准 0
是可选的。对于 VLOOKUP 的第四个条件,0
与 FALSE
相同,因为它查找完全匹配。
默认值为1
,对数据进行排序后,它将返回小于或等于条件的匹配项,如 VLOOKUP 的 TRUE。
从中,INDEX 找到并返回正确的值。
<小时/>引入动态数组公式XLOOKUP我们可以使用:
=XLOOKUP(yourCriteria,B:B,A:A,"",0)
关于Excel VLOOKUP,其中键不在第一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38641040/