【转载+原创】批量删除word中特定字符后的所有内容

本文档介绍了如何通过录制和编辑宏来删除Word文档中以编辑:开始到文档结尾的多余内容。首先,在单个文档中操作并录制宏,然后编写代码批量处理文件夹内所有.doc文件。批量处理的宏会调用之前录制的宏,实现快速清理。只需将文件夹路径替换为实际位置,即可运行宏清理多个文档。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

需求:多个word文档结尾有编辑、广告等无用信息,需要将从“编辑:”开始到文档结尾的内容全部删除

  1. 在word中打开宏录制,然后查找并选中“编辑:”,然后按Shift选中这里到文档末尾的全部内容,选中后按Delete删除。完成以上操作后停止宏录制,得到的宏为:
'
' 宏1 宏
'
'
    Selection.Find.ClearFormatting
    With Selection.Find
        .Text = "编辑:"
        .Replacement.Text = ""
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .CorrectHangulEndings = False
        .HanjaPhoneticHangul = False
        .MatchAllWordForms = False
        .MatchSoundsLike = False
        .MatchWildcards = False
        .MatchFuzzy = False
    End With
    Selection.Find.Execute
    Selection.EndKey Unit:=wdStory, Extend:=wdExtend
    Selection.Delete Unit:=wdCharacter, Count:=1
End Sub
  1. 接下来是引用↓这个网址上的内容

https://www.cnblogs.com/huangcong/p/13384560.html

Sub 批量操作WORD()
   Dim path          As String
   Dim FileName  As String
   Dim worddoc   As Document
   Dim MyDir       As String
   MyDir = "G:\360data\重要数据\桌面\新建文件夹 (2)"  '文件夹路径根据需要自己修改,需要处理的文件都放该文件夹内
   FileName = Dir(MyDir & "\*.doc*", vbNormal)
   Do Until FileName = ""
   If FileName <> ThisDocument.Name Then
         Set worddoc = Documents.Open(MyDir & "\" & FileName)
         worddoc.Activate
         Call 处理WORD  '调用宏,换成你自己宏的名字
         worddoc.Close True
         FileName = Dir()
    End If
   Loop
Set worddoc = Nothing
End Sub
'======================下面的宏换成你自己的宏=================================
Sub 处理WORD()
 ActiveDocument.Paragraphs(1).Range.Select
 Selection.Font.Size = 72
End Sub

把相应的部分换成我自己的就ok了,最后得到:

Sub1()
'
' 宏1 宏
'
'
    Selection.Find.ClearFormatting
    With Selection.Find
        .Text = "编辑:"
        .Replacement.Text = ""
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .CorrectHangulEndings = False
        .HanjaPhoneticHangul = False
        .MatchAllWordForms = False
        .MatchSoundsLike = False
        .MatchWildcards = False
        .MatchFuzzy = False
    End With
    Selection.Find.Execute
    Selection.EndKey Unit:=wdStory, Extend:=wdExtend
    Selection.Delete Unit:=wdCharacter, Count:=1
End Sub
Sub 批量操作WORD()
   Dim path          As String
   Dim FileName  As String
   Dim worddoc   As Document
   Dim MyDir       As String
   MyDir = "C:\Users\XXX\Desktop\test\1"  '文件夹路径根据需要自己修改,需要处理的文件都放该文件夹内
   FileName = Dir(MyDir & "\*.doc*", vbNormal)
   Do Until FileName = ""
   If FileName <> ThisDocument.Name Then
         Set worddoc = Documents.Open(MyDir & "\" & FileName)
         worddoc.Activate
         Call1  '调用宏,换成你自己宏的名字
         worddoc.Close True
         FileName = Dir()
    End If
   Loop
Set worddoc = Nothing
End Sub

可喜可乐~ 可喜可乐~保存后在宏列表里运行就OK了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值