|
学习VS交流 发表于 2015-1-23 10:49
老师这个完美了
如果是删除文档开始第一个字符前的空格和空白段落
可以吐槽一下吧?
菩提本无树,明镜亦非台,本来无一物,何处惹尘埃.
以下代码未经严苛测试:
Sub DeleteStartEndBlankCharacters()
''''功能:删除文档开始和结尾位置的空白段落和空格
Dim astrFindText(1 To 2) As String
Dim astrReplaceText(1 To 2) As String
Dim I As Integer
''''查找连续的空白段落,半角空格,全角空格,不连续空格
astrFindText(1) = "^28[^13^32" & ChrW$(160) & ChrW$(12288) & "]@([!^13^32" & ChrW$(160) & ChrW$(12288) & "])"
astrFindText(2) = "[^13^32" & ChrW$(160) & ChrW$(12288) & "]@^8"
astrReplaceText(1) = "\1"
astrReplaceText(2) = Empty
Application.ScreenUpdating = False ''''关闭屏幕更新
With ActiveDocument.Content
.InsertBefore Chr$(28) & Chr$(13) ''''文档起始位置之前插入辅助字符
.InsertAfter Chr$(13) & Chr$(8) ''''文档结束标记之前插入辅助字符
For I = 1 To 2
With .Find
.ClearFormatting ''''清除查找格式
''''如有需要其他空白字符,请自行添加
.Text = astrFindText(I)
.Wrap = wdFindStop ''''完成搜索后即结束
.Forward = True ''''正向查找
.MatchWildcards = True ''''使用通配符
.Replacement.ClearFormatting ''''清除替换格式
.Replacement.Text = astrReplaceText(I)
.Execute Replace:=wdReplaceAll ''''全部替换
End With
Next
End With
Application.ScreenUpdating = True ''''恢复屏幕更新
End Sub
|
评分
-
1
查看全部评分
-
|