如何修改XLOOKUP公式获取其结果上方两行的单元格值?
解决XLOOKUP结果取上方两行单元格值的问题
你现在的需求是把原XLOOKUP公式返回的数值,替换成该数值所在单元格上方两行的品牌值,直接修改公式即可,有两种靠谱的写法:
方法1:用ROW函数获取行号后计算
公式:
=INDEX(B1:B18,XLOOKUP(D2,A1:A18,ROW(A1:A18),NA(),0)-2)
原理说明:
- 把XLOOKUP的第三参数改成
ROW(A1:A18),这样它返回的不再是B列的数值,而是A列中匹配到的单元格的行号(比如匹配到A9,就返回9) - 用这个行号减去2,得到目标品牌所在的行(9-2=7)
- 最后用INDEX函数从B1:B18区域中提取对应行的内容,也就是B7的Brand B
方法2:简化版(利用XLOOKUP返回单元格引用)
公式:
=INDEX(B:B,XLOOKUP(D2,A:A,A:A,NA(),0)-2)
这个写法更简洁,直接让XLOOKUP返回A列匹配单元格的引用,再通过行号计算定位到B列对应位置,效果和方法1一致。
验证效果
当D2输入P2时,公式会定位到A9,计算行号9-2=7,提取B7的Brand B,完全符合你的需求。
内容的提问来源于stack exchange,提问作者Michi
相关产品推荐
相关产品推荐

