【问题标题】:Count rows in column until sum is reached excluding negatives计算列中的行数,直到达到总和,不包括负数
【发布时间】:2021-03-18 07:49:32
【问题描述】:

我正在尝试计算行数(在本例中为天数),直到正值的总和 >= 原始负值或更从概念上讲,初始投资完全得到回报。在下面的示例中:
对于 -70(2021 年 1 月 1 日),该值将是 8(2021 年 1 月 1 日 - 2021 年 1 月 8 日)(含)。
对于下一个 -70(2021 年 1 月 2 日),该值将是 9(2021 年 1 月 2 日 - 2021 年 1 月 10 日)(含)。
对于接下来的 -30(2021 年 1 月 6 日),该值将是 6(2021 年 1 月 2 日 - 2021 年 1 月 11 日)(含)。

我找到了以下适合我的数组公式:

=MATCH(D2,SUBTOTAL(9,OFFSET(B2,,,ROW(B2:B17)-ROW(B2))),1)

但是,这不会忽略列中的其他负值。

尽可能不使用辅助列

我想要实现的示例:

+-----------+--------+----------------+
| Date      | Amount | Desired Result |
+-----------+--------+----------------+
| 1/1/2021  | -70    | 8              |
+-----------+--------+----------------+
| 1/2/2021  | -70    | 9              |
+-----------+--------+----------------+
| 1/3/2021  | 0      | 0              |
+-----------+--------+----------------+
| 1/4/2021  | 0      | 0              |
+-----------+--------+----------------+
| 1/5/2021  | 0      | 0              |
+-----------+--------+----------------+
| 1/6/2021  | -30    | 6              |
+-----------+--------+----------------+
| 1/7/2021  | 40     | 0              |
+-----------+--------+----------------+
| 1/8/2021  | 30     | 0              |
+-----------+--------+----------------+
| 1/9/2021  | 0      | 0              |
+-----------+--------+----------------+
| 1/10/2021 | 70     | 0              |
+-----------+--------+----------------+
| 1/11/2021 | 30     | 0              |
+-----------+--------+----------------+

任何帮助将不胜感激 -

【问题讨论】:

    标签: excel excel-formula


    【解决方案1】:

    嗯,我想出了一个与您的数字一致的公式。它可能比它需要的更复杂,因为尽管您的测试数据总是可以计算出确切的金额(精确匹配),但我添加了支付超额金额的情况(不精确匹配)。

    原理是开发一个三角矩阵,使用 mmult 只选择一行数据,然后选择两行等。

    =IF(B2<0,IFERROR(MATCH(-SUMIF(B2:B$2,"<0"),MMULT(N(ROW(A$2:A$12)>=TRANSPOSE(ROW(A$2:A$12))),IF(B$2:B$12>0,B$2:B$12,0)),0),
    MATCH(-SUMIF(B2:B$2,"<0"),MMULT(N(ROW(A$2:A$12)>=TRANSPOSE(ROW(A$2:A$12))),IF(B$2:B$12>0,B$2:B$12,0)),1)+1)-ROW()+2,0)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多