我有一些要合乎特定条件的数据

示例数据:

  A    B   C   D
  Id   Id2 Id3 Val
  1    1   8   6
  1    2   7   7
  1    3   3   8
  1    4   6   4
  1    4   78  7
  1    1   2   9
  1    3   1   4
  1    4   3   6
  1    1   5   8
  1    4   7   2


现在我希望基于具有100个值的每个ID的某些条件(例如,Id2 = 4和Id3 = 2)对每个ID的Val求和,但是由于表很重,我想避免为每个ID重新运行求和。

到目前为止,我一直在做的是

= SUMIFS(D:D, A:A, "=1", B:B, "=4", C:C, "=2")
= SUMIFS(D:D, A:A, "=2", B:B, "=4", C:C, "=2")
= SUMIFS(D:D, A:A, "=3", B:B, "=4", C:C, "=2")
= SUMIFS(D:D, A:A, "=4", B:B, "=4", C:C, "=2") ...


(如果我正确记得sumifs的语法)

有没有一种更快的方法来避免针对每个Id重新运行sumif?

最佳答案

如果您想以此方式计算很多SUM,最好使用pivot table完成。

您也可以尝试DSUM,但是我怀疑它会比SUMIF更快。

09-05 06:02