使用VBA求解不同工作表的平均值

 时间:2024-10-13 04:34:28

1、打开Excel表格后,点击菜单栏上面的【开发工具】,【Visual Basic】打开VBA编辑器。

使用VBA求解不同工作表的平均值

2、在VBA编辑器的菜单栏上面点击【插入】,【模块】。

使用VBA求解不同工作表的平均值

3、在代码框里边输入以下VBA程序代码:Sub AverageValue()Dim i巳呀屋饔, j, c, co, su, boOn Error Resume Next '忽俟痂檗盈略运行过程中出现的错误Application.ScreenUpdating = False '关闭运行过程中屏幕刷新,提高运行速度Set mysheet1 = ThisWorkbook.Worksheets(1) '定义工作表,即:Sheet1co = ThisWorkbook.Sheets.Count '统计本工作表里面所含的工作表数量 For j = 2 To 1000 '从第二行执行到1000行 su = 0 '累计清零 c = 0 '计数个数清零 For i = 2 To co '从第二个工作表开始执行,直至最后一个 Set mycells = ThisWorkbook.Worksheets(i).Cells(j, 2) '定义单元格 bo = IsNumeric(mycells) '判断单元格里面的值是否为数字 If mycells <> "" And mycells <> 0 And bo = True Then '如果单元格里面不为空白或者不为零,且为数值,则执行计算 su = Worksheets(i).Cells(j, 2) + su '单元格数值相加 c = c + 1 '累计的次数 mysheet1.Cells(j, 2) = su / c '求解平均值 End If Next NextApplication.ScreenUpdating = True '恢复屏幕更新显示End Sub

使用VBA求解不同工作表的平均值

4、VBA程序代码思路解读:(1)由于每个工作表的命名不一样,也可能不规则,如果都捂执涡扔使用工作表名称,录入的工作量也是挺大的,此时还是根据实际情况使用工作表的索引号比较妥当快捷;(2)先获取工作薄里边有多少个工作表,排除用于写入平均值的工作表,再逐一按照工作表顺序进行条件判断(不为空白、不为0、单元格为数值)并求和,对可以求和的表格计1,数值的和除以累计的个数就可以求出平均值。(3)每执行1行时,都会对所有工作表(除了用于写入平均值的工作表)进行判断、求解平均值。

使用VBA求解不同工作表的平均值

5、输入完程序之后,点击工具栏里边的“运行”图标运行程序,即可在工作表上面看到计算的结果(运行速度的快慢取决于计算量的大小)。

使用VBA求解不同工作表的平均值

6、程序运行之后的结果。

使用VBA求解不同工作表的平均值
  • Excel 2007中,VBA开发工具中Combobox的使用
  • excel中使用vba清除复制或者剪贴模式
  • 怎样使用VBA制作百叶窗效果的欢迎画面?
  • 如何使用VBA代码实现多行多列转置
  • 怎样使用VBA工作表激活事件的运用?
  • 热门搜索
    消防安全手抄报知识 森林防火手抄报资料 关于知识的手抄报 青春期手抄报内容 只要妈妈露笑脸手抄报 有关于环保的手抄报 孝行天下手抄报 孝德手抄报内容 手抄报的内容 绿色家园手抄报资料