excel宏(excel宏代码编写教程)
今天我们带大家一起来实现一下VBA多表汇总,逐句讲解+分析思路,如果你是0基础,听完起码知道如何修改代码,也就非常奈斯了!
我们说的是多表指的是多工作表(WorkSheet或者Sheet)
需求:汇总1-3月数据到汇总表
需求分析:
我们程序做的其实就是模仿人工做的,把人工处理的逻辑转成程序可以认识的语句,所以我们首先要分析一下人工是如何处理的!
人工处理非常简单,分两步:
步骤01 :复制数据
复制数据,我们人工复制非常简单,因为你知道什么地方是有效数据区域,开始和结束位置,你是怎么判断的呢?你说有内容的最后一行就是结束位置呀,那么这个就要转成Excel能认识的VBA语句!
步骤02 :粘贴数据
粘贴数据,我们人工粘贴也是无感的,反正就是贴,但是你贴的时候也不是随意贴的,你接着上次粘贴内容的最后一行空白行粘贴的,这个最后一行有内容的行号的下一个空白,我们要转成语句,问题也就解决了!
本文由“壹伴编辑器”提供技术支持
根据我们分析人工操作下来,我们核心就是要知道如何表示数据的最后一行!
这个VBA有自己的规则:
Cells(Rows.Count,1).End(xlup).Row
以上表示,从A列(其他列把1修改成对应的列即可)的最后一个单元格往上找,找到首个有内容的单元格,并获取行号(ROW),这个跟我们自己手动啊
知识点:
Cells(行,列)-单元格的一种表示方法,列可以使用字母表示
Cells(1,2) 和 Cells(1,"B") 都表示第一行第二列交叉的单元格-B1
虽然这些都有了,但是我一个小白,还是不知道怎么做呀?
这个是否,就要说Excel做的好的地方了,录制宏!
动画演示:如何录制宏
如果没有看到开发工具,按下面步骤操作一下即可。
【文件】 - 【选项】- 【自定义功能区】 - 【开发工具】 勾上 确定即可!
动画演示:查看录制的宏
查看宏的方式有很多,除了上面的点击【Visual Basic】 还可以 右击任意工作表名称,选择 【查看代码】 或者按下ALT+F11查看!
我们来看一下录制宏的代码:
Sub多表汇总()''多表汇总宏''Range("A1:G10").SelectSelection.CopySheets("汇总表").SelectRange("A1").SelectActiveSheet.PasteColumns("B:B").EntireColumn.AutoFitRange("D6").SelectEndSub
知识点:
1、如何在VBA中做一些说明注释
单引号的部分(' 多表汇总 宏),表示注释,也就是对程序或者内容做一些补充说明,对程序本身没有影响
2、VBA中如何表示单元格
我们的每个动作都被录制下来,后续还可以反复运行!
出现比较多的就是单元格的操作,那么单元格怎么表示呢?