当前位置: 首页 > article >正文

VBA高级应用30例应用3在Excel中的ListObject对象:插入行和列

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

分享成果,随喜正能量】 以无我心行善,是无为之法。行善而不执着,是成就之因。

佛说:以无我相无人相无众生相无寿者相行一切善,即得阿耨多罗三藐三菩提。。

应用3 在Excel中的ListObject对象

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

4 插入行和列

ListObject对象还具有增加行及列的功能,例如:我们会用到ListRows的Add方法增加行,这时会用到“AlwaysInsert”参数。

  • ListRows.Add 方法:将新行添加到指定的 ListObject 表示的表中。

语法:expression.Add (Position, AlwaysInsert)

其中expression为一个代表ListRows对象的变量。

参数:

名称

必需/可选

数据类型

说明

Position

可选

Variant

整数。 指定新行的相对位置。

AlwaysInsert

可选

Variant

Boolean 类型的值 。 指定在插入新行时,是否始终移动表格中最后一行下面的单元格中的数据,而不考虑表格下面的行是否为空行。 如果为 True,则表格下面的单元格将下移一行。如果为 False,如果表格下面的行为空,表格将展开以占用该行,而不移动其下方的单元格,但如果表格下面的行包含数据,则插入新行时,这些单元格将下移

  • ListColumns.Add 方法:向列表对象中添加新列

语法:expression.Add (Position)

其中expression为一个代表 ListColumns 对象的变量。

参数:

名称

必需/可选

数据类型

说明

Position

可选

Variant

整数。 从 1 开始指定新列的相对位置。 以前位于此位置的列则向后移动。

我们看下面的代码:

Sub mynzTableInsert()

Dim oSh As Worksheet

Set oSh = ActiveSheet

oSh.ListObjects("myTable1").Range.Select

'在特定位置插入

Selection.ListObject.ListColumns.Add Position:=4

'在右边插入

Selection.ListObject.ListColumns.Add

'在上面插入

Selection.ListObject.ListRows.Add (11)

'在下面插入

Selection.ListObject.ListRows.Add AlwaysInsert:=True

End Sub

代码截图:

0d732cf285f9c4487d5a4d32ac9be65f.jpeg

代码的讲解:以上代码利用了Add方法分别插入了一些行和列,大家要注意以上语句的用法。这些用法都是我们在实际工作中经常用到的。列表对象对于实际工作有着非常重要的价值,值得我们深入的学习。

代码的运行测试:

5935798f5a53c32615c2b7a925d6eccc.jpeg

如果需要对新插入的行执行某些操作,可以将对象变量设置为新行:

Dim oNewRow As ListRow

Set oNewRow = Selection.ListObject.ListRows.Add(AlwaysInsert:=True)

oNewRow.Range.Cells(1,1).Value = "Value For New cell"

463e8a495982f9d4663dd7a01dc8b8bc.jpeg

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

99512dcb78d809b7903229104b4b9b6e.jpeg

e4a99a1f85e1309975bbb4eea73431e1.jpeg




http://www.kler.cn/a/393537.html

相关文章:

  • C语言 | Leetcode C语言题解之第557题反转字符串中的单词III
  • 数字孪生在智慧能源项目中的关键作用,你了解多少?
  • 容器技术在DevOps中的应用
  • HTTP协议基础
  • 使用Python实现定期从API获取数据并存储到数据库的完整指南
  • 单元测试、集成测试、系统测试有什么区别
  • 阿里云云效制品仓库(maven)私服配置快速入门
  • Linux软件包管理与Vim编辑器使用指南
  • 文件包含绕过(session打条件竞争应该是文件上传的!!!)
  • Python使用总结之如何去除图片的水印?
  • JavaScript入门笔记
  • SQL,力扣题目1107,每日新用户统计
  • Unity中实现战斗帧同步的高级技术
  • 网安加·百家讲坛 | 仝辉:金融机构鸿蒙应用安全合规建设方案
  • 重构代码之内联方法
  • 7、computed计算属性使用
  • 数据库参数备份
  • 爬虫开发工具与环境搭建——开发工具介绍
  • Spring Boot——日志介绍和配置
  • LeetCode 3249.统计好节点的数目:深度优先搜索(DFS)
  • WPF 中的视觉层和逻辑层有什么区别?
  • 问题(十九)JavaAgent-ByteBuddy与CGLIB字节码增强冲突问题
  • 基于Java Springboot高校实验室管理系统
  • SpringBoot(二)集成mybatis
  • WPF-控件的属性值的类型转化
  • CSS教程(七)- 背景