大家早上好
我有以下情况:
col i = 日期(数组公式)
col l = 利润(数组公式)
col k = 总利润(数组公式)
col z = col i 的运行最大值(在 0 和运行最大值之间),当日期更改时停止并重新启动。
像这样:
在Excel引入数组公式之前,我已经用以下公式解决了它:
=MAX(0;MAXIFS($V$8:V8;$T$8:T8;I8))
用 vba 完成整列。
Excel引入数组公式后,我用以下公式解决了它:
=MAP(i1#;k1#;LAMBDA(DATA;NET;MAX(0;MAXIFS($k$1:NET;$i$1:DATA;DATA))))
这个解决方案有效,它会溢出整个列的结果并且计算是正确的,但是在 10,000 行上它很慢。
我想问任何想要回答的人的问题如下:在Excel公式或VBA中是否有更快的方法来执行此操作?
非常感谢大家,祝大家有美好的一天。
达里奥
附注 我在这个社区中阅读了很多关于 MAXIFS 的答案,但没有关于“溢出”MAXIFS 的答案。再次感谢您
那
=BYROW(K2#,LAMBDA(r,MAX(0,TAKE(K2#,ROW(r)-1))))
应该快一点。
但也许你也应该研究一下 Powerquery。