我正在尝试使用VLOOKUP excel函数代替LOOKUP。 我已经阅读了VLOOKUP的优化信息,但无法对其进行调整。 有什么帮助吗?
以下函数返回:
=LOOKUP(2,1/((E1:E9>E10)-(E1:E9<E10)))
功能范围是:查找E10值,从下至上搜索范围E1:E9,如果首先出现E10的数字>或<,则返回+1或-1
示例1
E1 = 6
E2 = 5
E3 = 5
E4 = 4
E5 = 6
E6 = 6
E7 = 5
E8 = 8
E9 = 8
如果E10 = 8
结果为-1,因为找到的第一个值小于E10(从E9开始并向上)
如果E10 = 7
结果为1,因为找到的第一个值大于E10(从E9开始并向上)
??
=VLOOKUP(2,1/((E1:E9>E10)-(E1:E9<E10));1)
或其他任何功能代替LOOKUP?
答案 0 :(得分:0)
先前的假定解决方案正常工作
=VLOOKUP(2,1/((E1:E9>E10)-(E1:E9<E10));1)
但需要输入以下公式:
CTRL+SHIFT+ENTER
我尝试过使用MATCH,但对我来说,结果是无法正常工作。
还有其他想法吗?
答案 1 :(得分:0)
返回我的第一个功能:
h2:first-word{color:red}
我已经对其进行了组合,以了解其工作原理,并找到其他可能的解决方案。
如果E10 = 8
=LOOKUP(2,1/((E1:E9>E10)-(E1:E9<E10)))
=LOOKUP(2,1/((FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE,FALSE)-(TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,TRUE,FALSE,FALSE)))
=LOOKUP(2,1/((0,0,0,0,0,0,0,0,0)-(1,1,1,1,1,1,1,0,0)))
=LOOKUP(2,1/(-1,-1,-1,-1,-1,-1,-1,0,0))
=LOOKUP(2,{-1,-1,-1,-1,-1,-1,-1,#Div/0!,#Div/0!},ROW(E1:E9))
转换为数组,以获得: ROW(E1:E9)
=LOOKUP(2,{-1,-1,-1,-1,-1,-1,-1,#Div/0!,#Div/0!},{1,2,3,4,5,6,7,8,9})
的值,请返回2
,因为{{1} },并且比-1
因此,现在,要了解Excel的详细说明,可以使用以下函数来获取数组:
E7=5
产生相同的结果:
E10=8
并使用先前的结果与 VLOOKUP 组合,得到与 LOOKUP 函数相同的结果,但是接受 CTRL + SHIFT + ENTER 是我的目标
=INDEX(1/((E1:E9>E10)-(E1:E9<E10)),0)