需求:在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》中下载。