VBA第二课:跨表查询及提取数据
(1)上周知识点复习回顾
①学习VBA的初衷
②录制宏与修改宏
③变量的定义和类型
④For循环的运用
(2)上周课堂作业讲解
变量——类型:变体
功能:可以存储任何变量类型
如果查询或遍历信息需要删除的话,需要从表的下面开始遍历
如果涉及到遍历信息比较大的时候,需要灵活运用Exit for对For循环进行剪枝
灵活运用宏录制进行辅助功能的增加和学习
(3)案例讲解
·跨工作表语句
·跨工作簿语句
Sub test1()
Dim sh1
'获取工作簿语句
Set sh1 = Application.Workbooks("实验表.xlsm").Sheets("a备份")
Debug.Print sh1.Cells(2, 1)
End Sub
·跨文件夹语句:关键在于路径的读取,并打开绝对路径下的excel文件,结果可以与跨工作簿语句进行对比
注意:在VBA中,一定要打开工作簿才可以进行具体工作表的信息读取!!!
不打开不能进行处理,除非通过C#等开发语言调用控制台等(此处不属于VBA课程讲解范畴)
'跨文件夹提取
Sub test2()
Dim sh2
'本地路径
Debug.Print Application.ThisWorkbook.Path
'非本地路径
Dim str As String
'给变量进行路径赋值
str = "D:\兴趣\写书\我的VBA课程\VBA讲解\VBA第一课:初识VBA\作业\实验表1.xls"
'先打开表
Application.Workbooks.Open (str)
'再读取信息
Debug.Print Sheet4.Cells(2, 1)
'关闭工作表
Application.Workbooks("实验表1.xls").Close
End Sub
案例要点:
在判断合并单元格内容时,单元格内容信息始终在单元格的第一行
通过定位变量进行数据搬迁定位
通过判断空值个数,进行内嵌循环
(4)作业之聚合信息并发送邮件
Step1:聚合并统计信息
Step2:发送邮件