首页 > 解决方案 > 如何从一个具有可变行数的工作表中获取平均值并将其放到另一个工作表中?

问题描述

希望从一个工作表中获取具有可变行数的一列数据的平均值,然后将该平均值粘贴到同一工作簿中的另一个工作表上。有什么建议么?

要补充一点,我想从一个工作表中获取具有 33 个不同列的可变行数的平均值,并将这些列中的每一列的平均值放入另一个工作表(C3 到 C35)的一个单元格中。

作为参考,是一张有 33 列其他数据的表格。行数是可变的,具体取决于收集数据的时间。我想取一列的平均值,并像这样在相应的单元格中显示该平均值。我有 33 列,所以这会给我 33 个不同的平均值来进入另一张表。

标签: excelvba

解决方案


您可以考虑将列中的整个值范围传递到动态数组中,然后使用平均工作表函数。

例如:

Sub Test()

    Dim x As Variant

    Worksheets(1).Select
    x = Range("A1", Range("A1").End(xlDown))
 'assuming your values are in column A and the first cell is A1, and that there are no blank rows

    Worksheets(2).Range("A1").Value = Application.WorksheetFunction.Average(x)
'assuming you want to paste the average value on cell A1 of the second worksheet

End Sub

推荐阅读