当サイトの記事にはプロモーションが含まれています。
Word VBAで複数の語句を一括置換する方法:初心者でもできる簡単マクロ
2025.06.182026.01.27
Wordで文書を作成していると、「この言葉を統一したい」「何度も同じ語句を変えたい」といった場面がよくあります。そんなときに便利なのが、Word VBA(マクロ)を使った一括置換です。今回は、初心者の方でもわかりやすく、実際に使えるマクロを紹介します。
なぜマクロを使うのか?
Wordのイメージ
普段、Wordの「検索と置換」機能を使って語句を変えることができますが、複数の語句を一度に置換するのは手間がかかります。そこで、マクロを使うことで、何度も同じ作業を繰り返す手間を省き、効率的に作業を進めることができます。
マクロを使った一括置換の基本の流れ
まずは、基本的な流れを見ていきましょう。
Wordを開き、「開発」タブを表示 します。もし「開発」タブが表示されていない場合は、設定から表示させてください。
「Visual Basic」をクリック し、VBAの編集画面を開きます。
新しいモジュールを挿入 し、以下のコードを貼り付けます。
Sub 一括置換()
Dim 置換リスト As Variant
Dim i As Integer
' 置換前と置換後の語句をリストに追加
置換リスト = Array( _
Array("子供", "子ども"), _
Array("様々", "さまざま") _
)
' 置換処理
For i = LBound(置換リスト) To UBound(置換リスト)
With ActiveDocument.Content.Find
.Text = 置換リスト(i)(0)
.Replacement.Text = 置換リスト(i)(1)
.Execute Replace:=wdReplaceAll
End With
Next i
End Sub
「F5」キーを押してマクロを実行 します。
これで、指定した語句が一括で置換されます。
もっと便利に!Excelで置換リストを管理する方法
置換する語句が増えてくると、コードの編集が大変になります。そんなときは、Excelで置換リストを管理し、マクロで読み込む方法がおすすめです。
Excelで置換前と置換後の語句をリストにする (例A列に置換前、B列に置換後)。
WordのマクロでExcelファイルを開き、リストを読み込む コードを追加します。
Sub Excelから置換リストを読み込む()
Dim ExcelApp As Object
Dim wb As Object
Dim ws As Object
Dim i As Integer
Dim 置換リスト As Variant
' Excelを起動
Set ExcelApp = CreateObject("Excel.Application")
ExcelApp.Visible = False ' Excelを非表示で開く
' Excelファイルを開く
Set wb = ExcelApp.Workbooks.Open("置換リストのパス.xlsx")
Set ws = wb.Sheets(1)
' リストのデータを配列に格納
置換リスト = ws.UsedRange.Value
' 置換処理
For i = 2 To UBound(置換リスト, 1) ' 1行目はヘッダーなので2行目から
With ActiveDocument.Content.Find
.Text = 置換リスト(i, 1)
.Replacement.Text = 置換リスト(i, 2)
.Execute Replace:=wdReplaceAll
End With
Next i
' Excelを閉じる
wb.Close
Set wb = Nothing
Set ExcelApp = Nothing
End Sub
これで、Excelで管理している語句リストを使って、Word文書内の語句を一括で置換することができます。
注意点とアドバイス
バックアップを取る マクロを実行する前に、必ず文書のバックアップを取っておきましょう。
置換対象を確認 置換する語句が他の意味で使われていないか、文脈を確認してから実行しましょう。
段落記号(Chr(13))の取り扱い マクロ内で段落記号を扱う際は、Chr(13)を適切に使用してください。
よくある質問や疑問
Q1: マクロを実行するときにエラーが出ます。どうすればいいですか?
エラーの内容によって対処方法が異なります。エラーメッセージを確認し、必要に応じてコードを修正してください。
Q2: Excelで管理する語句リストの形式はどうすればいいですか?
ExcelのA列に置換前の語句、B列に置換後の語句を入力し、1行目にはヘッダーを入れてください。
Q3: 他のWord文書にも同じマクロを適用できますか?
はい、同じマクロを他のWord文書にも適用できます。ただし、文書の内容によっては、置換結果が異なる場合がありますので、事前に確認してください。
まとめ
Word VBAを使った複数語句の一括置換は、手作業では時間がかかる作業を効率化する強力なツールです。初心者の方でも、基本的なマクロを使うことで、簡単に実行することができます。さらに、Excelで置換リストを管理することで、より柔軟に対応することができます。
他にも疑問やお悩み事があれば、お気軽にLINEからお声掛けください。
コメント