《VBA高级应用30例》(版权10178985),是我推出的第十套教程,教程是专门针对高级学员在学习VBA过程中提高路途上的案例展开,这套教程案例与理论结合,紧贴“实战”,并做“战术总结”,以便大家能很好的应用。教程的目的是要求大家在实际工作中分发VBA程序,写好的程序可以升级。本套教程共三册三十个专题,本讲的内容是:VBA高级应用30例应用3在Excel中的ListObject对象:循环列出当前工作表中的表
【分享成果,随喜正能量】 生活里,能够同行的人,
比风景更重要;
因为,很多时候,
同行的人,其实就是风景。。
应用3 在Excel中的ListObject对象
在VBA中,表(Tables)的应用还是较普遍的,它们被称为ListObjects,这是Excel 2003引入的一个集合。但是对象模型的这一部分有很大的变化,我在这个专题简单给大家讲解一下应用,包括创建及一些格式操作。
2 循环列出当前工作表中的表
我们可以利用下面的代码查找活动工作表上的所有的表:
Sub mynzFindAllTablesOnSheet()
Dim oSh As Worksheet
Dim oLo As ListObject
Set oSh = ActiveSheet
For Each oLo In oSh.ListObjects
Application.Goto oLo.Range
MsgBox "表: " & oLo.Name & ",范围: " & oLo.Range.Address
Next
End Sub
代码截图:
代码讲解:以上代码在当前工作表的ListObjects对象中建立一个遍历循环,在循环中给出每个元素(对象)的名称及表的范围。
代码的运行测试:为了验证一下代码的运行情况,我现在工作表中插入几个表,如下面的截图,一共插入了两个表,加上之前的表一共是三个表:
点击运行:
(待续)
本讲内容参考程序文件:高级应用03.xlsm
我20多年的VBA实践经验,全部浓缩在下面的各个教程中: