=OFFSET(INDIRECT(ADDRESS(ROW(), COLUMN())),-4,2+MATCH(MIN(OFFSET(INDIRECT(ADDRESS(ROW(), COLUMN())),0,3,1,10)), OFFSET(INDIRECT(ADDRESS(ROW(), COLUMN())),0,3,1,10), 0),1,1)
Run Code Online (Sandbox Code Playgroud)
在上面的示例中(不考虑它的作用),我必须对两次完全相同的表达式求值: OFFSET(INDIRECT(ADDRESS(ROW(), COLUMN())),0,3,1,10)
有没有办法在公式中动态添加变量?这样我们就可以存储一次结果,并在以后在公式中简单地引用它?这是一个示例,其中计算相同事物几倍的成本没有影响,但是更昂贵的调用或计算又如何呢?
我正在考虑递归功能语言(例如Caml)中存在的某些功能。
您可以用简单的相对单元格引用替换 Indirect(address(row(),Column()) ,但要回答您的问题:
是的,可以使用 Laurent Longre 的 MOREFUNC 插件 - 它具有 SETV 和 GETV 功能,可以完全满足您的需求。