如何获取在excel中一致分裂的单元的平均值?

时间:2018-08-31 07:38:28

标签: excel average

我想每7个电池平均取一个电池。例如,我要取单元格A1,A8,A15,A22等的平均值,然后取A2,A9,A16,A23等的另一个平均值。由于数据集很大,如何快速执行此操作。

谢谢

2 个答案:

答案 0 :(得分:0)

将此数组公式放在第一个单元格中:

=AVERAGE(INDEX(A:A,N(IF({1},(ROW(A1:INDEX(A:A,MATCH(1E+99,A:A)/7))-1)*7+ROW(1:1)))))

作为数组公式,退出编辑模式时需要使用Ctrl-Shift-Enter而不是Enter进行确认。

然后复制/拖动7个单元格。

enter image description here

答案 1 :(得分:0)

也许是用户定义的功能

Public Function Get7Average(ByVal rng As Range) As Variant
    Dim arr(), i, total As Long, counter As Long
    If rng.Columns.Count > 1 Or rng.Cells.Count < 7 Then
        Get7Average = CVErr(xlErrNA)
        Exit Function
    Else
        arr = rng.Value
        For i = LBound(arr, 1) To UBound(arr, 1) Step 7
            counter = counter + 1
            If IsNumeric(arr(i, 1)) Then
                total = total + arr(i, 1)
            End If
        Next
    End If
    If total = 0 Then
        Get7Average = CVErr(xlErrNA)
        Exit Function
    End If
    Get7Average = total / counter
End Function

在工作表中