将非连续输入以及错误(范围之外的搜索值等)
=LAMBDA(searchvalue,searchrange,valuerange,
LET(
LB,XLOOKUP(searchvalue,searchrange,searchrange,,-1),
UB,XLOOKUP(searchvalue,searchrange,searchrange,,1),
LV,XLOOKUP(searchvalue,searchrange,valuerange,,-1),
UV,XLOOKUP(searchvalue,searchrange,valuerange,,1),
IF(searchvalue<=MIN(searchrange),UV,
IF(searchvalue>MAX(searchrange),LV,
IF(LB=UB,average(LV,UV),
LV+(searchvalue-LB)/(UB-LB)*(UV-LV)
)
)
)
))
我已经成功测试了它,并在我的工作表中使用了值和单元格引用。继续将其放在名称管理器中为l_interpalyx,并将其用作自定义功能:用我的搜索值,searchrange和searchrange输入将其馈送,这些输入始于昨晚。 我今天拿起我的文件,现在我所有的公式返回#Value。将lambda公式从名称经理复制到工作表仍然可以正常工作。计算工作表/文件/完整重新计算无法解决问题。保存文件无法解决问题。重新启动文件有时似乎有所帮助,而是不正当(显然不是解决方案)。 进入名称管理器,编辑名称并按OK(无需更改)似乎解决了问题。 其他人是否经历过这种奇怪的行为?我是否缺少任何设置,即指定函数如何以一致,可靠的基础工作?
(目前,我添加了一条VBA线以自动化lambda函数在工作簿开放活动中的编辑,但要点是远离宏...)
自最近一次Excel更新以来,这是一个已知的错误(将Groupby和Pivotby带离了实验分支)。它已经在互联网上进行了报道,因此希望Microsoft意识到并可以解决