各位粉丝,大家好,不知道大家遇到过这种常见的问题没:word中有很多空白行,如何有效删除这些空白行呢?对于这个问题,我相信各位估计有很多方法,比较常见的也是最原始的方法即是一个个地按键盘上的删除这些空白行,还有就是如果发现删除错误了,大不了就用word快速工具栏的“撤销”和“重做”的重做吧!还有没有其他方法吗?估计有。
但是,今天呢,我要将自己的的方法分享给大家,也算是抛砖引玉吧。我的方法就是通过VBA后台实现对多余空白行的删除、撤销和重做操作。下面,我就以干货的形式给大家分享一下我的实现方法和过程吧!希望不要嫌弃哦,呵呵!
首先,我们假设有一篇有多余空白行的一篇word文档。如下图所示
然后,我们在这个有多余空白行的word文档的顶部通过“开发工具”功能选项卡—> “旧式工具”—>“ActiveX”。如下图
在上图界面选择插入三个标签控件,并且设置其样式。如下图所示
再次,我们对这个三个标签提示的功能进行代码实现。
(1)模块1代码:
Public k As Integer, dc As Document '定义共有变量k用于统计删除的空 _
白行段落数目(也同时代表了操作的次数),定义文档对象dc用于全局的引用 _
具体文档所要的各种操作
Sub Del_MoreBlank_Lines_Operate() '删除Word文档中多余的空白行
Dim mypar As Paragraph, dc As Document '定义段落对象变量mypar _
、文档对象变量dc
Set dc = ActiveDocument '为文档对象dc指派具体的对象(当前活动文档)
k = 0
For Each mypar In dc.Paragraphs '用For Each循环逐一删除空白行
If Len(Trim(mypar.Range)) = 1 Then '若去掉首尾空格的当前段落对 _
象mypar的范围内容长度测试为1(说明该段落只包含一个回车字符的空 _
行段落),则将该空白行段落删除
mypar.Range.Delete
k = k + 1 '及时统计删除的空白行段落数目(也同时代表了操作的次数)
End If
Next
MsgBox "删除了“" & k & "”个空白行!