You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现跳过超支项的累计预算列,最大化100美元优先级采购

预算累计成本跳过超支项的公式方案

现有按采购优先级从上到下排列的物品成本列,预算为100美元,需要在优先采购的前提下最大化使用预算。当前使用公式IF(SUM($A$1:A1) <= 100, SUM($A$1:A1), "Over")生成累计成本列时,一旦出现超支显示Over,后续符合预算的项也无法计入累计,以下是解决方法:

示例数据集

物品成本当前累计成本输出期望输出
404040
408080
40OverOver
20Over100
20OverOver

解决方案

1. Excel 365/2021 动态数组公式

使用SCAN函数迭代累计,自动跳过超支项,直到预算用尽:

=LET(
    budget, 100,
    costs, A:A,
    SCAN(0, costs, LAMBDA(acc, cost,
        IF(acc="Over", "Over",
            IF(acc + cost <= budget, acc + cost, "Over")
        )
    ))
)

逻辑说明:从0开始累计,若当前累计值已显示Over,后续直接输出Over;若累计值加当前物品成本不超预算则累加,超预算则输出Over,后续项保持Over。

2. 旧版Excel兼容公式

假设累计列从B1开始:

  • B1单元格公式:
=IF(A1<=100,A1,"Over")
  • B2及以下单元格公式(下拉填充):
=IF(B1="Over",
    IF(LOOKUP(9.99E+307,$B$1:B1)+A2<=100,LOOKUP(9.99E+307,$B$1:B1)+A2,"Over"),
    IF(B1+A2<=100,B1+A2,"Over")
)

逻辑说明:先判断上一行是否为Over,如果是,就提取之前最后一个有效的累计值,加上当前成本判断是否超预算;如果上一行未超支,直接累加判断即可。

内容的提问来源于stack exchange,提问作者ElizaBeso000

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 15:33:10