VBA宏用于在具有动态范围的每列的最后一行插入平均值



我有一些列(在Excel文件中)代表一年中的月份;每列都有一些记录,我希望能够运行一个宏,将插入一个单元格在每列的最后一行的平均值。每列的第一个单元格是标题,所以我需要包括从第2行到列中最后一个记录的单元格。每次使用宏时,列数和行数都会有所不同。我将非常感谢你的帮助。谢谢!

这里有一个开箱即用的解决方案。它取每列的平均值,从第2行开始。

Sub AverageColumn()
    Dim count As Integer
    Dim sum As Integer
    Dim lastCol As Integer
    lastCol = ActiveSheet.UsedRange.Columns(ActiveSheet.UsedRange.Columns.count).Column
    For c = 1 To lastCol
        sum = 0
        count = 0
        ActiveSheet.Cells(2, c).Select
        Do While ActiveCell.Value <> ""
            sum = sum + ActiveCell.Value
            count = count + 1
            ActiveCell.Offset(1, 0).Activate
        Loop
        ActiveCell.Value = sum / count
    Next c
End Sub

最新更新