Sumproduct范围排除sum = 0的行或包含空白单元格的行

时间:2018-04-10 12:24:56

标签: excel

以下是一个示例数据集:

    1   2   3   4   5   6   7   8   9   10  11  12
a   20  0   9   0   0   0   0   0   0   0   5   9
a   0   10  0   0   0   0   0   0   0   0   0   10
a   20  10  0   0   0   0   0   0   0   0   0   18
a   0   10      7   0   0   0   0   0   0   0   18
a   0   0   2   0   0   0   0   5   4.5 0   0   18
a   0   10  8   0   0   0   0   0   0   0   5   8
b   0   10  6   0   0   0   0   0   0   0   0   0
b   10  0   9   0   0   0   0   0   0   0   0   5
b   0   10  9   3.5     0   0   0   0   0   0   0
b   0   10  5   0   0   0   0   0   0   0   5   8
b   10  8   6   0   0   0   0   0   0   0   5   10
b   0   15  24  0   5   0   0   0   0   0   5   9
c   0   0   8   0   4.5 0   0   5   0   0   0   0
c   0   0   0   0   0   0   0   0   0   0   0   0
c   10  10  27  0   0   0   0   0   0   0   0   
c   5   20  5   0   10  0   0   0   0   0   0   0
c   10  10  10  0   0   0   0   0   0   0   0   10
d   0   0   0   0   0   0   0   0   0   0   0   0
d   10  5   5   0   0   0   0   0   0       5   10

我必须计算每种类型的圆矢量长度(r):a,b,c和d。 包含空白的每个组的个体或者像包含全0的第二个c的个体给出我正在使用的公式的误差,这迫使我首先使用公式计算每个个体的r -

对于第一个(在O列中):

=IF(OR(COUNTBLANK(B2:M2)>0,SUM(B2:M2)=0),"",SQRT(SUMPRODUCT(B2:M2,B$1:M$1)^2+SUMPRODUCT(B2:M2,B$1:M$1)^2)/SUM(B2:M2))

然后对所有a的平均值:

=IF(SUMIFS(O$2:O$20,A$2:A$20,Q2)=0,"",AVERAGEIFS(O$2:O$20,A$2:A$20,Q2))

我需要的是将这两个公式结合起来以便excel:

  1. 首先检查匹配类型:a,b,c,d
  2. 排除空白行或sum = 0
  3. 取消剩下的每一行
  4. 所有a的平均值,例如
  5. 非常感谢任何帮助

0 个答案:

没有答案