如何在excel工作表的每行下面增加1个空行呢?实现的方法有两种,第一是通过可视化界面菜单操作,第二是通过VBA代码操作实现空行的添加。
在excel增加空行的效果如下图所示:
每行下面增加1个空行的第一种方法:辅助列排序法。
操作步骤如下:
第一,单击工作表第一列,在第一列前插入一空白列,然后用阿拉伯数字(1、2、3、4、5、6、7、8……)标注行序号,如图所示:数据区域有10行。
第二,全选辅助列数据区序号,向下复制相等行数。
第三,单击第一列第一个单元格,单击菜单【数据】-【排序】命令,对数据区域按升序排序(辅助列为主键)。这样就成功实现了隔行插入一个空行。
第四,将不需要的辅助列删除即可。
第二种方法:使用VBA代码实现增加和删除空行。
在VBA代码编辑界面输入如下代码,然后在工作表中执行宏,就可以轻松的隔行增加空行。
Sub insertrow()
Application.ScreenUpdating = False '关闭屏幕更新,提高代码执行效率
I = [A65536].End(xlUp).Row '取得非空单元格行号
Rows(I + 1).RowHeight = 14.25 '设定插入空行行高为14.25,数字可修改
For I = [A65536].End(xlUp).Row To 1 Step –1 '执行循环
Rows(I).Insert Shift:=xlDown '执行插入
If I <> 1 Then
Rows(I).RowHeight = 14.25
End If
Next
Application.ScreenUpdating = True '打开屏幕更新
End Sub
操作方法:按ALT+F11直接进入VBA编辑器,在当前工程下新建模块(【插入】-【模块】),在代码窗口将上以代码复制过去并保存。
需要执行隔行插入空行,直接运行子过程insertrow()即可。(快捷键F5)
如果在不需要空行的前提下,可以将空行删除?那么,如何在excel中批量删除空行呢?我们也是使用VBA代码来实现。
代码如下:
Sub deleterow()
Application.ScreenUpdating = False
Dim RowN As Integer
For RowN = 1 To 20 '20 视数据行进行更换
If ActiveSheet.Cells(RowN, 1).Value = "" Then
ActiveSheet.Cells(RowN, 1).Select
Selection.EntireRow.Delete
End If
Next
Application.ScreenUpdating = True
End Sub
执行以上代码,运行宏,就可以实现批量删除空行。
本篇文章的实例教程,可以参考论坛帖子:http://www.blwbbs.com/forum.php?mod=viewthread&tid=760&extra=page%3D1