Word删除空格、空行、超链接宏
1、删除空格和空行
此宏的主要功能是删除空格,并将软回车替换为硬回车
Sub 删除空格和空行()
'
' 删除空格和空行 宏
'
'
'英文单词与英文单词之间保留一个半角空格,其他的所有空格均删除
myReplaceExecute Selection.Range, "([a-zA-Z])[^32 ^s]{1,}([a-zA-Z])", "\1^32\2", True
'"空格"是指半角空格、全角空格及不间断空格
myReplaceExecute Selection.Range, "([!a-zA-Z])[^32 ^s]{1,}([!a-zA-Z])", "\1\2", True
'删除前是非字母,后是字母之间的空格
myReplaceExecute Selection.Range, "([!a-zA-Z])[^32 ^s]{1,}([a-zA-Z])", "\1\2", True
'删除前是字母,后是非字母之间的空格
myReplaceExecute Selection.Range, "([a-zA-Z])[^32 ^s]{1,}([!a-zA-Z])", "\1\2", True
'软回车替换为硬回车
myReplaceExecute Selection.Range, "^l", "^p", True
End Sub
' 以下是函数,函数是为了将具体的过程封装起来,以便于方便修改。
Function myReplaceExecute(myRange As Range, myFindText As String, myReplaceText As String, myMatchWildcards As Boolean)
With myRange.Find
.ClearFormatting
.Replacement.ClearFormatting
.Execute findtext:=myFindText, MatchWildcards:=myMatchWildcards, replacewith:=myReplaceText, Replace:=wdReplaceAll
End With
End Function
2、删除超链接
此宏的主要功能是删除文档中的所有超链接
Option Explicit
Sub 删除超链接()
Dim HypCount As Integer, i As Integer
Application.ScreenUpdating = False '关闭屏幕更新
HypCount = ActiveDocument.Content.Hyperlinks.Count '取得活动文档中超链接个数
MsgBox "已删除文档中" & HypCount & "个超链接" '使用倒序法逐个删除超链接
For i = HypCount To 1 Step -1
ActiveDocument.Hyperlinks(i).Delete
Next
Application.ScreenUpdating = True '恢复屏幕更新
End Sub