excel - 自定义 SUMPRODUCT()

标签 excel excel-formula formula weighted sumproduct

我有下表:

enter image description here

考虑到每个月的权重,我的目标是在 5 个月内分散 10,000 个单位。与 10,000 相邻的行是我最好的尝试(我在这上面花了几个小时)。黄色是我所追求的。

我试图用来计算的逻辑如下:计算跨月的平均分布(在本例中为 10,000/5 = 2,000 = X)。将每个月的权重相乘以获得加权金额(在此示例中获得 M2 = 1,600 和 M4 = 3,000:X +(X * M2 权重)等)。然后,您可以将总 10,000 减去这些总和,得到 5,400,然后您可以在没有权重的月份中分配。必须有一个简单的方法来做到这一点 SUMPRODUCT但我似乎无法弄清楚。

到目前为止,我最好的尝试是:
=IF(B3=0,SUMPRODUCT(ABS((10000/5)*$B3:$F3)),(10000/5)+((10000/5)*B3))

最佳答案

尝试以下操作:

enter image description here
B3 中的公式:

=IF(B$2=0,($A3-SUMPRODUCT(($B2:$F2<>0)*(($A3/5)*(1+$B2:$F2))))/COUNTIF($B2:$F2,0),($A3/5)*(1+B$2))

向右拖动。

逻辑:
  • =IF(B$2=0,<true>,<false>) - 检查上面的单元格是否为零
  • 如果上面是假的(所以不是0)那么:($A3/5)*(1+B$2) - 第一除法(10000/5)并将结果乘以 (1-<percentage>)
  • 如果 IF产生真 - 检查范围内的哪些单元格不为零,并乘以与步骤 2 相同的逻辑。使用 SUMPRODUCT 获得的总和然后可以从 10000 中扣除并除以实际保持为零的单元格计数(因此 COUNTIF )。
  • 关于excel - 自定义 SUMPRODUCT(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61523844/

    相关文章:

    excel - 如何将动态更改的验证列表重置为第一项?

    arrays - 简单的哈希表 Excel VBA

    excel - 如何在excel中添加总行动态数组公式

    excel - 在一系列具有相似公式的单元格中,如何使某些值变为绝对值而某些值保持变量?

    crystal-reports - 如何在 Crystal 报表的文本字段中添加前导零

    math - 来自rssi的AT+CSQ网络百分比公式

    VBA:Err.Clear、Resume、Resume Next 不会阻止 On Error GoTo 仅执行一次

    java - 如何使用 java 从数据库中获取值并将其存储在现有的 excel 文件中?

    excel - 识别 Excel 模式

    mysql - 如何在mysql中插入一些公式?