具有多个标准的平均值,包括sum而不是array

时间:2016-06-16 10:29:56

标签: excel excel-formula

我试图建立一个可以执行以下操作的公式:计算满足耦合条件的变量的平均值。这种情况的问题是,我希望在指定年份的投资总和以及类型在高(K4)和低(J4)值范围内时计算平均值。 在这个例子中,预期的结果是变量a = 15% - 条件是年 - 2015年,类型-b& c(来自H8:H10的范围,a,b,c的顺序可能不同),以前标准的投资总和在400和600之间。由于投资总和为900,因此类型c不符合标准,因此超出范围之前指定的。类型b的投资等于500,因此计算平均值。 任何想法我该如何处理?感谢。

enter image description here

2 个答案:

答案 0 :(得分:0)

这是第一次尝试,但公式仍然是一个巨大的怪物。可能有更好,更优雅的方式。但是,至少它是有效的。

=(IF(AND(SUMIF($D$4:$D$21,$H$8,$E$4:$E$21)>=$J$4, SUMIF($D$4:$D$21,$H$8,$E$4:$E$21)<=$K$4), SUMIFS($F$4:$F$21,$B$4:$B$21,$H$4,$C$4:$C$21,$I$4,$D$4:$D$21,$H$8), 0) + IF(AND(SUMIF($D$4:$D$21,$H$9,$E$4:$E$21)>=$J$4, SUMIF($D$4:$D$21,$H$9,$E$4:$E$21)<=$K$4), SUMIFS($F$4:$F$21,$B$4:$B$21,$H$4,$C$4:$C$21,$I$4,$D$4:$D$21,$H$9), 0) + IF(AND(SUMIF($D$4:$D$21,$H$10,$E$4:$E$21)>=$J$4, SUMIF($D$4:$D$21,$H$10,$E$4:$E$21)<=$K$4), SUMIFS($F$4:$F$21,$B$4:$B$21,$H$4,$C$4:$C$21,$I$4,$D$4:$D$21,$H$10), 0)) / (COUNTIF($D$4:$D$21,$H$8)*--(IF(AND(SUMIF($D$4:$D$21,$H$8,$E$4:$E$21)>=$J$4, SUMIF($D$4:$D$21,$H$8,$E$4:$E$21)<=$K$4), SUMIFS($F$4:$F$21,$B$4:$B$21,$H$4,$C$4:$C$21,$I$4,$D$4:$D$21,$H$8), 0)<>0) + COUNTIF($D$4:$D$21,$H$9)*--(IF(AND(SUMIF($D$4:$D$21,$H$9,$E$4:$E$21)>=$J$4, SUMIF($D$4:$D$21,$H$9,$E$4:$E$21)<=$K$4), SUMIFS($F$4:$F$21,$B$4:$B$21,$H$4,$C$4:$C$21,$I$4,$D$4:$D$21,$H$9), 0)<>0) + COUNTIF($D$4:$D$21,$H$10)*--(IF(AND(SUMIF($D$4:$D$21,$H$10,$E$4:$E$21)>=$J$4, SUMIF($D$4:$D$21,$H$10,$E$4:$E$21)<=$K$4), SUMIFS($F$4:$F$21,$B$4:$B$21,$H$4,$C$4:$C$21,$I$4,$D$4:$D$21,$H$10), 0)<>0))

这是截图:

enter image description here

答案 1 :(得分:0)

我已将列命名为范围(类型:列类型D4的数据:D21,invst:E4:E21,年份:b4:b21,最小值:单元格j4,最大值:单元格k4,pcg:f4:f21)易于理解。 将其粘贴在h8中作为数组公式(对于带有年份的过滤器)并命名此单元格&#34; suma&#34;

=SUMIFS(invst,type,H8,year,2015)  # for type a

将其粘贴在h9中作为数组公式(对于b)并将其命名为sumb

=SUMIFS(invst,type,H9)

将其粘贴到j8(答案为类型a)作为数组公式

=IFERROR(AVERAGE(IF(AND(suma>min,suma<max),IF(type=H8,pcg,""),"")),"")

将其粘贴到j9(类型b的答案)作为数组公式

=IFERROR(AVERAGE(IF(AND(sumb>min,sumb<max),IF(type=H9,pcg,""),"")),"")