Excel-逐步动态范围的平均值



我的目标是获得二维逐步动态范围的平均值。逐步表示一个在参考单元格的右边,一个在左边,x次。例如,如果我有下表,我想取A1、B2、C3、D4和E5的平均值,这些单元格是动态范围的一部分。因此,如果我将参考单元格更改为B2,则需要B2、C3、D4和E5的平均值。我做过研究,OFFSET或Sumproduct的变体可能会起作用;然而,对于阶梯式结构没有什么特别的。如有任何帮助,我们将不胜感激!

示例表

以下用户定义的函数返回一个"逐步"数字数组,您可以对其求和、求平均等。

Function stepWise(rng As Range, steps As Long)
Dim i As Long
ReDim arr(1 To steps, 1 To 1) As Variant
For i = 1 To steps
arr(i, 1) = rng.Cells(1).Offset(i - 1, i - 1)
Next i
stepWise = arr
End Function

将UDF代码粘贴到标准公共模块代码表中。

平均值示例(A1、B2、C3、D4、E5(:

=AVERAGE(stepWise(A1, 5))

平均值示例(B1、C2、D3、E4(:

=AVERAGE(stepWise(B2, 4))

相关内容

  • 没有找到相关文章

最新更新