代码之家  ›  专栏  ›  技术社区  ›  genespos

选择发现Execute不能正确使用Word 2013

  •  3
  • genespos  · 技术社区  · 8 年前

    我为Word 2003编写了一个宏来删除不需要的“回车”,并用空格替换它们。

    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "^p"
        .Replacement.Text = " "
        .Forward = True
        .Wrap = wdFindAsk
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
    With Selection.Find
        .Text = "  "
        .Replacement.Text = " "
        .Forward = True
        .Wrap = wdFindAsk
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
    Selection.Find.Execute Replace:=wdReplaceAll
    Selection.Find.Execute Replace:=wdReplaceAll
    

    编辑

    此外,该命令在录制过程中作用于选择,但在执行宏时贯穿整个文档。

    1 回复  |  直到 8 年前
        1
  •  1
  •   RealCheeseLord    8 年前

    .Wrap = wdFindAsk ,因为这会在搜索您的 Selection 这会询问您是否应该将搜索扩展到整个文档。但是,如果运行宏,则不会出现提示,并且默认为 Search the whole Document

    .Wrap = wdFindStop 选择 已达到。

    Wrap property