VBA高级应用30例应用3Excel中的ListObject对象:选择表的一部分 ...

打印 上一主题 下一主题

主题 844|帖子 844|积分 2532

《VBA高级应用30例》(版权10178985),是我推出的第十套教程,教程是专门针对高级学员在学习VBA过程中提高路途上的案例睁开,这套教程案例与理论联合,紧贴“实战”,并做“战术总结”,以便大家能很好的应用。教程的目标是要求大家在实际工作中分发VBA程序,写好的程序可以升级。本套教程共三册三十个专题,本讲的内容是:VBA高级应用30例应用3在Excel中的ListObject对象:选择表的一部分

分享成果,随喜正能量】 生活活的是心态,当你消极烦闷时,它就是漫长乏味的,当你热情积极时,它就是出色充实的。
应用3 在Excel中的ListObject对象

  在VBA中,表(Tables)的应用还是较普遍的,它们被称为ListObjects,这是Excel 2003引入的一个聚集。但是对象模型的这一部分有很大的变革,我在这个专题简单给大家讲授一下应用,包罗创建及一些格式操作。
3 选择表的一部分

在实际工作中我们也可能需要处置惩罚表的特定部分。这里有几个例子阐明如何实现这一点。我们看下面的代码,这段代码中的代码有:① 如何选择整个表 ② 如何选择表的数据 ③ 如何选择表的某个列 ④ 如何选择表列的数据 ⑤ 如何选择表的表头 ⑥ 如何选择表的某行 等等,这些代码对于我们实际应用是非常有用的。
看下面的代码:
Sub mynzSelectingPartOfTable()
  Dim oSh As Worksheet
  Set oSh = ActiveSheet
  '方法一: with the listobject
  With oSh.ListObjects("myTable1")
  MsgBox .Name
  '选择整个表
  .Range.Select
  '仅选择整个表的数据
  .DataBodyRange.Select
  '选择第三列
  .ListColumns(3).Range.Select
  '仅选择第一列的数据
  .ListColumns(1).DataBodyRange.Select
  '仅选择第4行(标题行不盘算!)
  .ListRows(4).Range.Select
  End With
  '方法二: with the range object
  '选择整个列(仅限数据)
  oSh.Range("myTable1[列2]").Select
  '选择整个列(数据加标题)
  oSh.Range("myTable1[[#All],[列1]]").Select
  '选择表的整个数据部分
  oSh.Range("myTable1").Select
  '选择表头
  Range("myTable1[#Headers]").Select
  '选择整个表
  oSh.Range("myTable1[#All]").Select
  '在表中选择一行
  oSh.Range("B55").Select
End Sub
代码的截图:

代码的讲授:以上代码利用了两种方案实现了本节开头的功能。希望大家能在工作中实际的利用这些。
代码的测试,由于我上述代码是写在一起的,大家在测试的时间可以增长断点大概按F8键逐行测试即可:



就测试到这里,请学员自己测试完成。
正如您可能已经注意到的,当前的Excel版本处置惩罚表时就像处置惩罚Range名称一样。插入表后,将主动界说范围名称。删除一个表后,界说的名称也将被删除。

  
我20多年的VBA实践履历,全部浓缩在下面的各个教程中:







免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

数据人与超自然意识

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表