在word文件中要重複使用”取代”功能的VBA程式碼如何寫?

我的文件中需要用「取代」功能來消掉幾列特定的文字,

例如:我要刪除文件中所有的「鋁合金」、「車架」、「飛輪」等這幾項特定名詞,

要怎麼寫VBA程式碼才不會一大串?

Update:

除了以上的文字外,如果我想要再刪除以下兩種文字,那要怎麼做?是把使用萬用字元的選項改成Ture就好了嗎?

1.刪除文件中所有「~頁次:第1頁」...「~頁次:第121頁」等字。

2.刪除文件中所有類似的的句子:Menu增加(沙拉)即可、Menu增加(水果)即可。

Update 2:

另外,我用錄製巨集的方式執行以下2個動作:

1.刪除頁面最上面的11列空白列

2.游標往下移到下一頁的第一列

我想要這樣的動作一直重複到最後一頁為止,

那要怎麼做?

1 Answer

Rating
  • 1 decade ago
    Favorite Answer

    Sub 巨集1()

    '就像這樣呼叫 ReplaceAll() 副程式

    Call ReplaceAll("鋁合金", "")

    Call ReplaceAll("車架", "")

    Call ReplaceAll("飛輪", "")

    End Sub

    Sub ReplaceAll(FindStr As String, ReplaceStr As String)

    Selection.Find.ClearFormatting

    Selection.Find.Replacement.ClearFormatting

    With Selection.Find

    .Text = FindStr

    .Replacement.Text = ReplaceStr

    .Forward = True

    .Wrap = wdFindContinue

    .Format = False

    .MatchCase = False

    .MatchWholeWord = False

    .MatchByte = False

    .MatchWildcards = False

    .MatchSoundsLike = False

    .MatchAllWordForms = False

    End With

    Selection.Find.Execute Replace:=wdReplaceAll

    End Sub

    • Login to reply the answers
Still have questions? Get your answers by asking now.