分享到:
发表于 2009-12-11 17:40:02 楼主 | |
一个可以批量删除所有空格的宏,在复制文字到word时带有大量空格的时候感觉比较实用。 宏的使用方法见: 如何在OFFICE中使用宏宏代码如下(附件为同样代码): Sub DBL() i=1 Do '从当前文档的顶端开始逐一选择文档的每一段文字 ActiveDocument.Paragraphs(i).Range.Select If Trim(Selection.Text) = Chr(13) Then '如果选择的段落里只有回车符和空格则删除此段 Selection.Delete Else '如果选择的段落非空,就将选择的指针移向下一段 Selection.MoveDown i=i+1 End If Loop Until i=ActiveDocument.Paragraphs.Count End Sub OK! 写好了宏程序后,可以把建好的宏拖到快捷工具栏上,做好后,如果需要从网页上拷贝文字到Word上编辑时,只要单击一次这个宏按钮,即可瞬间删除整篇文档里的空行了。 另外一种代码(可以显示出共删除了多少空行等) Sub DelBlank() Dim i As Paragraph, n As Integer Application.ScreenUpdating = False For Each i In ActiveDocument.Paragraphs If Len(i.Range) = 1 Then i.Range.Delete n = n + 1 End If Next MsgBox "共删除空白段落" & n & "个" Application.ScreenUpdating = True End Sub |
|
个性签名:无
|
发表于 2010-01-01 09:43:40 1楼 | |
Word中可能产生空白的地方有很多(很多Unicode字符都会产生空白),未必就是段落标记(^p)。你的代码太简单了,不足以处理各种情况——空行可不仅仅只是只有一个段落标记字符一种情况。并且你的代码在处理大文档是的效率也不高,自己想想改进的方法吧。 |
|
针对ZOL星空(中国)您有任何使用问题和建议 您可以 联系星空(中国)管理员 、 查看帮助 或 给我提意见