另一个公式中使用的细胞旁边的细胞AVG

我在这里问新问题,所以我希望我能得到正确的答案。 我正在用电子表格帮助我的父亲,而且我正在解决如何做一个公式的问题。 不知道是否可以用公式完成,或者是否必须用macros来完成。

这是一个有多个比赛的得分表。 对于每场比赛都有一个总得分,并且得分旁边的单元格是一个X计数(bulleyes的数量)。 在同一行(K列),我计算了前6个总分,并将其平均分配:

= AVERAGE(LARGE((N15,Q15,T15,W15,Z15,AC15,AF15,AI15,AL15,AO15,AR15,AU15,AX15,BA15,BD15,BG15,BJ15),{1,2,3,4, 5,6}))

现在我需要把上面公式中使用的总得分旁边的X计数的AVG,并把解决scheme放在L列。

例如,如果在该行中用于AVG分数的单元格是:

N15,Q15,T15,W15,Z15,AC15

那么需要用于X计数AVG的单元格将是:

O15,R15,U15,X15,AA15,AD15

这个结果将被放入L15

请帮忙。 如果需要澄清,请让我知道。

屏幕截图:

请尝试下面的公式:

 =SUMPRODUCT(O15:BM15, --(MOD(COLUMN(N15:BL15)-COLUMN($N15),3)=0), --(N15:BL15+O15:BM15/10^3+COLUMN(N15:BL15)/10^6>= LARGE(N15:BL15+O15:BM15/10^3+COLUMN(N15:BL15)/10^6,6)) )/6 

它是如何工作的?

SUMPRODUCT有3个参数 – 第一个是数组求和,接下来的2个参数返回一个01的数组,只select第一个数组中有趣的元素。

  • MOD(COLUMN(N15:BL15)-COLUMN($N15),3)=0)

这部分内容是为了避免列出每一个单元格。 如果得分在input范围的每一列中,我们可以计算出相对于第一列的列数,而函数MOD(column,3)返回: {1,0,0,1,0,0...} 。 因此,只有input数组的每一列第三列将被包括在内。

  • (N15:BL15+O15:BM15/10^3+COLUMN(N15:BL15)/10^6>= LARGE(N15:BL15+O15:BM15/10^3+COLUMN(N15:BL15)/10^6,6)

这部分是要决定哪6个分数应该包括在最后的总和中。 最棘手的部分是决定如何处理关系。 我的做法是采取:

  • 如果两个分数相同,则取较大数量的小球
  • 如果它仍然捆绑在一起,从第一列

这意味着代替N15值我们计算:

 N15+O15/10^3+COLUMN(N15)/10^6 

使用您的示例数据,计算结果为: 566.017014 。 小数点前三位是bulleyes的数量,其次是列号。

您可以使用相同的公式通过更改第一个参数来计算前6个分数的平均值:

 =SUMPRODUCT(N15:BL15, --(MOD(COLUMN(N15:BL15)-COLUMN($N15),3)=0), --(N15:BL15+O15:BM15/10^3+COLUMN(N15:BL15)/10^6>= LARGE(N15:BL15+O15:BM15/10^3+COLUMN(N15:BL15)/10^6,6)) )/6 

你可以试试这个不太优雅的解决scheme:

= SUMPRODUCT(INDEX(N15:BK15,MATCH(LARGE((N15,Q15,T15,W15,Z15,AC15,AF15,AI15,AL15,AO15,AR15,AU15,AX15,BA15,BD15,BG15,BJ15),{ 1,2,3,4,5,6}),N15:BK15,0)+1))/ 6

由单元格L15:M15(2个单元格)中的Ctr + Shift + Enterinput为数组公式 :M15(2个单元格),应该如下所示:

{= SUMPRODUCT(INDEX(N15:BK15,MATCH(LARGE((N15,Q15,T15,W15,Z15,AC15,AF15,AI15,AL15,AO15,AR15,AU15,AX15,BA15,BD15,BG15,BJ15), {1,2,3,4,5,6}),N15:BK15,0)+1))/ 6}

加上大括号。

数字6等于您想要返回的最高分数。 现在,为什么2个细胞(L15:M15)。 我不能让SUMPRODUCT评估从INDEX得到的数组,所以我们必须input2个单元格。 我不认为这会是一个问题,因为在你的屏幕截图中,M列没有被使用。

注意:如果评估范围less于6项,则会出错。 用户3964075还好点。 它可能会也可能不会处理联系。