7.8 提前终止的累计

 

有如下库存数据:

imagepng

已知今天卖出此种商品数量 50,计算新的库存数据 (按照表中的顺序,依次清除库存数量,累计清除 50 为止,最后只保留库存数量大于 0 的行):

A
1 =E(‘A1:D18’)
2 =A1.iterate((a=min(Quantity,~~),Quantity-=a,~~-a),50,~~==0)
3 return A1.select(Quantity>0)

A2 进行 iterate 循环迭代处理,循环中 ~~ 代表上次迭代运行的结果,它的初始值设为 50。取当前行的 Quantity 与 ~~ 的最小值赋给变量 a,将当前行的数量减去 a,用 ~~-a 作为本次迭代的结果;当迭代结果 ~~ 为 0 时,结束迭代。

A3 选出迭代处理后的 A1 中 Quantity>0 的行

imagepng


帮你早下班 - esProc 桌面版与 Excel 数据处理
7.7 累计筛选
7.9 连续出现某种情况的累计