- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
强大的word宏3
强大的word宏:㈠录制一个宏
网上拷贝的资料,粘贴到word以后,可能会有很多多余的回车,利用宏可以轻松删除。
打开菜单:工具→宏→录制新宏,打开“录制宏”对话框,输入宏的名字,单击确定开始录制宏。
2、按CTRL+H打开替换对话框,查找内容“^p^p”替换为“^p”,即将两个连续的回车符替换成一个回车符。可多单击几次“全部替换”按钮,因为可能有多个连续的回车符。
3、单击停止录制按钮,完成录制。
看一下刚才录制的宏。打开菜单:工具→宏→Visual Basic 编辑器。
上面就是我们刚才录制的宏代码。
打开菜单:工具→宏→宏,打开“宏”对话框。
选中刚才录制的宏,单击运行,即可以将当前Word文档中的多余的回车符删除。
如果要经常使用,可以设置工具按钮或快捷键。设置方法如下:
在Word工具栏上右击→自定义…,打开“自定义”对话框。
找到刚才录制的宏,将其拖到工具栏合适的地方。
在刚添加的按钮上右击,可对按的名字、图像进行编辑。
单击“自定义”对话框上的“键盘…”按钮,打开“自定义键盘”对话框。
选中刚才录制的宏,按下合适的快捷键,关闭对话框,完成设置。
以后只要单击工具栏按钮或自定义的快捷键,就可以运行删除多余回车符了。
我的工具栏…… *_*
㈡删除空的段落
录制的宏,有很多代码实际上没用,可以对录制的宏代码进行手工编辑,下面宏代码即实现删除空的段落。
方案一,效率较高,但可能删除不了超过10亿个连续的回车符。Do While…… Loop,也可用 For ……Next语句替换。If I 30 Then ……End If是为了限制循环次数。因为如果是第一段、最后一段是空段落,用替换功能删除不了。原因,知道的指教一下。
Sub 删多余回车()
Dim I As Integer
Selection.End = 0 将光标移动到文档的开始
Selection.Find.Execute ^l, , , , , , True, wdfindcontiue, False, ^p, wdReplaceAll 将换行符替换成回车符
I = 0
Do While (Selection.Find.Execute(^p^p, , , , , , True, wdfindcontiue, False, ^p, wdReplaceAll))
I = I + 1
If I 30 Then
If 1 = Len(ActiveDocument.Paragraphs(1).Range.Text) Then ActiveDocument.Paragraphs(1).Range.Delete 如果第一段是空段落,则删除
If 1 = Len(ActiveDocument.Paragraphs(ActiveDocument.Paragraphs.Count).Range.Text) Then ActiveDocument.Paragraphs(ActiveDocument.Paragraphs.Count).Range.Delete 如果最后一段是空段落,则删除
Exit Do
End If
Loop
MsgBox CStr(I)
End Sub
方案二,从当前文档的最后一段开始,逐段检查,如果只有一个字符,将该段删除。该方案效率相对较低,当文档上千段的时候,速度会让人崩溃。友情提醒,宏在运行时候,CTRL+BREAK 键可以停止。
Sub 删多余回车()
Dim I As Integer, 段落数 As Integer
Selection.End = 0 将光标移动到文档的开始
Selection.Find.Execute ^l, , , , , , True, wdfindcontiue, False, ^p, wdReplaceAll 将换行符替换成回车符
段落数 = ActiveDocument.Paragraphs.Count
For I = 段落数 To 1 Step -1 删除多余回车
If Len(ActiveDocument.Paragraphs(I).Range.Text) = 1 Then
ActiveDocument.Paragraphs(I).Range.Delete
End If
Next I
End Sub
强大的word宏:㈢删除多余空格
Sub 删空格()
替换 , 半角空格
文档评论(0)