需求:在excel中计算固定区域的均值有很多实现方式,但是对于跟随一定条件变化的区域,要求解均值却很难实现。
解决方案:通过VBA的程序,根据条件改变选定的单元格区域,实现不定区域的均值计算。
程序截图如下:

第一步,通过Dwb替代当前活动工作簿
第二步,通过Range()函数设定可变化的单元格区域
![]()
Myrange1---代替range函数选定的区域,增加程序可读性;
Dwb.Sheets(2).Cells(x - j - 3, y)----代表一个单元格,
其中Dwb代表工作簿,sheets(2)代表第二个工作表,工作表可以是任意名字
cells(1,2)代表单元格,其中1是行号,2是列号,1和2在公式中用变量代替
range(A,B)代表从单元格A到单元格B的一个区域
第三步,用均值公式计算选定区域的均值
![]()
Dwb.Sheets(2).Cells(x - j - 3, q + y - 1) 表示均值存放的单元格
Application.WorksheetFunction.Average(Myrange1) 是程序自带的计算均值的函数
第四步,通过for循环修改变量实现不定区域的均值计算

包含了此部分功能的源程序可以在我的资源《Excel-通过VBA程序实现多表格多页批量复制和筛选数据2021-12-27》中下载。
该博客介绍了如何通过VBA编程解决在Excel中根据条件动态计算均值的问题。通过设定可变化的单元格区域,利用Application.WorksheetFunction.Average函数在循环中计算不同条件下的均值,实现不定区域的数据处理。提供的程序截图和源代码资源有助于理解实现过程。
2698

被折叠的 条评论
为什么被折叠?



