如何利用VBA实现在工作表中一次多行插入

【分享成果,随喜正能量】在这红尘滚滚、物欲横流的世界,面对争奇斗艳的鲜花,平凡的我们要学会欣赏但不陶醉;面对袭来的风雨 , 我们要学会应对,但不逃避 。虽然我们不能停下奔波的脚步,但我们能掌握脚步的节奏 。无论在成功的大门外徘徊,还是站在风光的领奖台上,我们能要挥一挥手,继续坦然前行 , 生命的脚步就多了几分稳健 。
《VBA代码解决方案》这套教程是我最早推出的教程,目前已经是第二版修订了 。这套教程定位于入门后的提高,在学习这套教程过程中,侧重点是要理解及掌握我的“积木编程”思想 。要灵活运用教程中的实例像搭积木一下把自己喜欢的代码摆好 。
这套教程共三册 , 一百四十七讲,内容覆盖较广,也是初级和中级间的过度教程 , 改版后的内容主要是提供程序源码文件及代码修正为32位和64位兼用代码 。今后一段时间会给大家陆续推出 。今日的内容是第22讲:如何利用VBA实现在工作表中一次多行插入

如何利用VBA实现在工作表中一次多行插入

第二十二讲 如何在工作表中一次插入多行表格的方法

在VBA代码解决方案中,很多的问题都将给出了专题的解决方案,随着我的慢慢讲解,相信大家会慢慢的会掌握很多的方法用于自己的工作中,让自己的工作更方便,更简洁,效率更高,今日讲的是利用VBA代码如何在EXCEL中一次插入多行表格的方法 。
在工作表的中插入多行空行,需要使用Insert方法,Insert方法应用于Range对象时在工作表或宏表中插入一个单元格或单元格区域,其他单元格作相应移位以腾出空间 。
语法:expression.Insert(Shift, CopyOrigin)
【如何利用VBA实现在工作表中一次多行插入】参数说明:
a) expression是必需的,该表达式返回一个Range对象 。
b) Shift是可选的,指定单元格的移动方向 。可为以下XlInsertShiftDirection常量,xlShiftToRight或xlShiftDown 。如果省略本参数,Microsoft Excel将依据该区域的形状决定移动方向 。
c) CopyOrigin是可选的 , 复制的起点 。

1 利用INSRET方法插入行的基本方法

如下面的代码所示 。
Sub mynz_22_1() '第22讲 EXCEL中,如何在工作表中一次插入多行表格的方法
Dim i As Integer
For i = 1 To 3
Sheets("22").Rows(3).Insert
Next
End Sub
代码解析:
1) mynz_22_1过程使用Insert方法在下面截图所示的数据区域的第2行和第3行之间插入三行空行 。
2) FOR,NEXT是循环语句,共循环三次 , 每次插入一行 。
3) Sheets ("22").Rows(3) 表示插入的位置为”22”工作表的第三行 。
代码截图:
如何利用VBA实现在工作表中一次多行插入

窗口运行前:
如何利用VBA实现在工作表中一次多行插入

窗口运行后:
如何利用VBA实现在工作表中一次多行插入

2 指定单元格所在行实现一次插入多行的方法

还可以使用引用多行的方法,如下面的代码所示:
Sub mynz_22_2() '第22讲 EXCEL中,如何在工作表中一次插入多行表格的方法
Sheets("22").Range("A3").EntireRow.Resize(3). Insert
End Sub
代码解析:mynz_22_2过程通过引用多行区域的方法实现一次插入多行 。
第2行代码中的Range(“A3”).EntireRow属性返回Range(“A3”)单元格所在的一整行,然后使用Resize属性调整行数后插入三行空行 。

3 直接指定行实现一次插入多行的方法

也可以直接指定相应行再调整行数后插入空行,如下面的示例代码:
Sub mynz_22_3() '第22讲 EXCEL中,如何在工作表中一次插入多行表格的方法
Sheets("22").Rows(3).Resize(3).Insert
End Sub
今日内容回向:
1 插入多行工作表的基本方法是什么?
2 expression.Insert 的意义是什么?
3 插入多行工作表的有几种方法?
本讲内容参考程序文件:VBA代码解决方案修订(1-48).xlsm
如何利用VBA实现在工作表中一次多行插入

我20多年的VBA实践经验,全部浓缩在下面的各个教程中:
如何利用VBA实现在工作表中一次多行插入

相关经验推荐