使用vba操作工作表,实现报表汇总
表有哪些方法和属性?
方法也可以理解为动作,表的方法有select,add, delete, copy,表的属性有count,name
假设工作簿中按顺序新建3张表叫1月和2月和3 月。如何切换到第2张表?
Sheet2.select //sheet2是表的默认名称。重命名只是给sheet2起一个别名
Sheets(2).select //sheets(2)指工作簿的第2张表
Sheets(“2月”).Select // Sheets(“2月”)指重命名为2月的表
如何知道工作簿中有多少张表?
Sheets.count //注意这里是一个值,并不能运行,如果想要查看结果可以复制到单元格中
像这样:sheet1.range(“a1”)=sheets.count在sheet1表的A1单元格中可查看表数量。
如何新建一个表?
Sheets.add after:=sheet1 //在第一张表后面新建一张表
Sheets.add before:=sheet1 //在第一张表前面新建一张表
Sheets.add after:=sheets(sheets.count) //在最后一个表后面新建一张表
案例1
题目:新建一个工作簿,在工作簿中插入12个新表,名称依次为1月到12月,结果如下图:
分析:
新建12张表,需要执行12次,每次的操作一样,现在所有表后面新建一张表Sheets.add after:=sheets(sheets.count),然后给这个新建的表重命名需要用到name属性。,
代码:
Sub addsheet ()Dim i as integerFor i =1 to 12Sheet1.add after:=sheets(sheets.count)Sheets(sheets.count).Name = i & “月”NextEnd sub
如何删除一张表?
Sheet1.delete
但是会弹出确定删除吗对话框,我们需要先禁止弹出对话框再执行删除操作
Excel.application.displayalerts=false
Sheet1.delete
Excel.application.displayalerts=true//执行完要取消禁止
如何copy一张表?
Sheet1.copy //会新建一个工作簿,因为没有指定copy的位置
Sheet1.copy after:=sheets(sheets.count)
案例2
题目:将所有表(除了部门表)的名字按顺序填充到部门表的A列单元格中,结果如下图:
代码:
Sub al2()Dim i as integerFor i =2 to sheets.countSheets(“部门”).range(“a” & i-1)=sheets(i).NameNextEnd sub
案例3
题目:下面工作簿中有5月份的日报表,每个表内容一致,现在需要将每个表中的报表日期、审核人、总计(汇总表中称为金额)等信息汇总到汇总表中,如下图:
最终结果,点击汇总按钮,汇总表自动填充汇总内容到相应位置
分析:
1.要使用for循环,从第2张表开始循环一直到最后一张表也就是sheets.count;
2.报表日期在每张表的e5单元格。可以用range(“e5”)获取相应的值;按顺序填充到汇总表的B列从第10行开始填充;
3.审核人在每张表的e6单元格。可以用range(“e6”)获取相应的值;按顺序填充到汇总表的C列从第10行开始填充;
4.总计(金额)在每张表的e44单元格。可以用range(“e44”)获取相应的值;按顺序填充到汇总表的D列从第10行开始填充;
5.插入一个汇总按钮,指定宏huizong()
代码:
Sub huizong()Dim i as integerFor I =2 to sheets.countSheet1.range(“b” & i+8)=sheets(i).range(“e5”)Sheet1.range(“c” & i+8)=sheets(i).range(“e6”)Sheet1.range(“d” & i+8)=sheets(i).range(“e44”)NextEnd sub
对数据分析或者vba有兴趣的朋友可以关注我的公众号,我会在公众号里面发学习笔记,全是干货。一起学习一起成长!
使用vba操作工作表,实现报表汇总相关推荐
- Excel中VBA操作工作表相关
VBA中已有工作簿合并表格数据 Sub 合并目录所有工作簿全部工作表() On Error Resume Next Dim MP, MN, AW, Wbn, wn Dim Wb As Workbook ...
- vba ado返回集合_利用ADO,实现同一文件夹下多个EXCEL工作表的数据汇总
大家好,今天继续讲解<VBA数据库解决方案>,今日讲解的是第37讲,利用ADO,实现同一文件夹下多个EXCEL工作表的数据汇总.最近的内容实用性比较强,如今日的内容,只把需要汇总的EXCE ...
- excel合并多个工作表_excel中汇总多个工作表数据的神器——合并计算
在excel中,经常会遇到多个表格的数据需要汇总,但是有时候每个表格的顺序.项目不一定完全相同,比如下图中,动图一是五个不完全相同的工作表,如何将五个工作表的数据汇总到一个工作表中(图二所示),并对这 ...
- 【原创】VBA学习笔记(300)VBA 很多工作表函数都只对1维数组有用,用2维数组上经常报错!
1 VBA 很多工作表函数,都只对一维数组有用,用2维数组上经常报错 很多工作表函数都不能对二维数组生效 有时候连错误值都不返回,直接代码中断) 2 举例1:join() 和 split() 函数 只 ...
- VBA-- 实例1.2多工作簿多工作表的数据汇总
实例 多工作簿多工作表的数据汇总 目标 excel中多表单据中特定cell中的内容汇总成数据条. demo分解 在实例1.1的基础上需要对工作簿进行操作. 依次打开工作簿用到了Dir()函数 因为不在 ...
- Excel vba引用工作表的三种写法
文章介绍vba引用工作表名称的三种不同写法. vba引用工作表是我们在学习VBA过程中很常用. 本文提供三种vba引用工作表的代码,通过这三种方式都可以实现vba引用工作表名. 方法一:Sheets( ...
- VBA添加工作表详解
看到这个题目,很多人可能会说:添加工作表需要解释吗?连VBA小白都会用呀!没错,大家可能经常用到,但是大家是否都知道下面的用法呢,可能还真不一定呦! VBA添加工作表的代码看起来确实很简单. Shee ...
- VBA——合并工作表及工作表单独保存的功能
沿用上一篇关于拆分excel工作表的文章的引子,本文分享下多个工作表合并的VBA功能.案例仍使用上篇文章的例子.已知有BS.HR等多个部门,分别存放在独立的以部门命名的工作表中,现需要将多个部门的工作 ...
- VBA指定工作表并批量复制
问题:VBA如何实现指定工作表并批量复制 答案:可通过窗体控件实现.具体操作如下: 1:新建命令按钮 2:创建用户窗体,增加复合框,在工作表中输入以下代码: Private Sub CommandBu ...
最新文章
- Android 接口回调
- 对‘初学者应该选择哪种编程语言’的回答——计算机达人成长之路(38)
- oracle照片字节大小值,Oracle每条记录的平均字节数
- spring 涉及到注解说明
- scala与python混合调用实验
- idea使用git插件,出现冲突了怎么解决?多场景分析助你解决问题
- C++设计模式--模板方法模式
- 【ARM】ARM汇编程序设计(一)
- Google Guava新手教程
- 计算机系统性错误,《深入理解计算机系统-异常》
- 简单完整的Python小爬虫教程
- sharelatex在centos 6.7 64位上的部署(2)
- WebWork深入浅出 (转贴)http://www.blogjava.net/moxie/archive/2006/10/20/76375.html
- 1恢复 群晖raid_关于RAID1阵列数据丢失的恢复
- Rclone挂载SharePoint
- VINS-Mono代码阅读笔记(十三):posegraph中四自由度位姿优化
- nulls first和nulls last
- STKMATLAB connect(四)卫星
- python爬虫英文单词_非常适合新手的一个Python爬虫项目:打造一个英文词汇量测试脚本...
- 【表面缺陷检测】基于yolov5的布匹表面缺陷检测(附代码和数据集)
热门文章
- android现状及发展趋势,2021年Android手机现状分析
- UBOOT----基于itop4412开发板,从0开始,慢慢摸索UBOOT的启动流程和系统组织结构(一)
- excel单元格一分为二还要输入文字,不能编辑是什么原因?
- CTO成长之路(一):优秀的程序员
- 东南大学张浩计算机,“智慧物联网与智能计算”高端论坛在东南大学举行
- 如何查看手机APP的包名,并快速查找
- js身份证号码,电话号码验证
- 宇视摄像机密码忘记找回方式(详细找回步骤)
- 2021年3月PHP免费自学最全教程来了
- 无法验证驱动程序的签名_无法验证应用?掉签名打不开应用?没越狱也能解决!...