Word VBAで複数の語句を一括置換する方法:初心者でもできる簡単マクロ
2025.06.18
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文書にも適用できます。ただし、文書の内容によっては、置換結果が異なる場合がありますので、事前に確認してください。
今すぐ解決したい!どうしたらいい?
いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」
あなたはこんな経験はありませんか?
✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦
平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!) を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。
LINEでメッセージを送れば即時解決!
すでに多くの方が私の公式LINEからお悩みを解決しています。
最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。
誰でも無料で使えますので、安心して使えます。
問題は先のばしにするほど深刻化します。
小さなエラーがデータ消失 や重大なシステム障害 につながることも。解決できずに大切な機会を逃す リスクは、あなたが思う以上に高いのです。
あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。
相談しに行く
ぜひ、あなたの悩みを私に解決させてください。
まとめ
Word VBAを使った複数語句の一括置換は、手作業では時間がかかる作業を効率化する強力なツールです。初心者の方でも、基本的なマクロを使うことで、簡単に実行することができます。さらに、Excelで置換リストを管理することで、より柔軟に対応することができます。
他にも疑問やお悩み事があれば、お気軽にLINEからお声掛けください。
コメント