Wordの書式変更を一括で! 置換機能&マクロの記録!

Wordの書式変更を一括で! 置換機能&マクロの記録!

『人文×社会』の中の人

どうも、『人文×社会』の中の人です。

今回は、Microsoft Wordの置換機能とマクロの記録を組み合わせて、原稿の書式を一括変更する方法をご紹介していきたいと思います。

前回の記事に引き続き、今回も原稿執筆にきっと役立つはずです!

そもそもマクロとは?

Microsoft Wordには、Excelと同様に「マクロ」と呼ばれる機能があります。これはスクリプトでWord上の操作を自動実行する機能で、VBAというプログラミング言語で制御することができます。

画像1

マクロといえば、Excelの方が有名です。顧客リストから納品書を自動作成したり、メーリングリストからメールを自動送信したりすることができます。

しかし、それと同様に、Wordでもマクロを活用すると、複数の原稿ファイルの書式を一括で統一するなど、さまざまなことができます。使えるならば、ぜひ活用したいものです。

画像3

でも、それってVBAとかいうプログラミング言語を勉強しなきゃいけないんじゃないの!? そっちの方がめんどくさ……じゃなくて、手間がかかるよー、と思われるかもしれません。

もちろんマクロを完全に使いこなすには、VBAの知識が必要です。けれども、ごく簡単な操作であれば、プログラミングの知識が一切なくても、実はマクロを使うことができます。

画像3

そのために使用するのが、「マクロの記録」という機能です。この機能を使うと、ボタンをぽちぽちと押すだけで、Word上の操作を自動的にVBAで記述し記録させることができます。

今回は、この「マクロの記録」の活用の仕方をご紹介していこうと思います。

開発タブを表示させよう

「マクロの記録」を使うには、Word上で「開発」タブを表示させる必要があります。

まず、Wordを起動させたら、上部のタブにある「ファイル」をクリックし、以下の画面にします。

画像4

この画面で、赤矢印で示した「その他」をクリックし、「オプション」を選択すると、以下のウィンドウが出てきます。

画像5

ここでさらに、左側のメニューバーの中にある「リボンのユーザー設定」を選択します。(赤矢印で示した部分です)

すると、次の画面になります。

画像6

この画面で、右側の「メインタブ」に表示されている「開発」のチェックボックスにチェックを入れて、「OK」をクリックしてください。(赤矢印で示した箇所です)

そうすると、下図のように、Wordの画面上で「開発」タブが表示されます。

画像7

「開発」タブに切り替えると、こんな感じです。

画像8

左の方にある「マクロの記録」というのが、今回使う機能です。

いざマクロを記録!

では、さっそく「マクロの記録」を使ってみましょう!

今回は、文献リスト中の特定部分をイタリックに変換するという操作を記録してみたいと思います。

そこで、あらかじめ文献リストを以下のように作っておきます。

画像11

「◎」で囲んだ部分がイタリックにしたい部分です。

検索&置換機能でこの部分を一括でイタリックにする操作を「マクロの記録」で記録してみます!

まず、先ほど表示させた「開発」タブの中の「マクロの記録」をクリックします。すると、以下のウィンドウが出てきます。

画像10

ここで、「マクロ名」をお好みの名前に変えた上で、「OK」をクリックします。今回は「change_italic」というマクロ名にしてみたいと思います。

すると、タブの中で「マクロの記録」という表示されていた部分が、こんなふうに変わります。

画像11

これで「マクロの記録」が始まりました。

この状態のまま、Word上で操作をすると、Wordが自動的にその操作を記録してくれます。

今回は、検索&置換機能で、「◎」で囲んだ部分をイタリックにした上で、「◎」を削除する操作をしたいと思います。

検索&置換機能の設定はこんな感じです。

画像12

「すべて置換」をクリックすると、先ほどの文献リストは以下のようになります。

画像13

ここで、「開発」タブの「記録終了」ボタンをクリックします。なんとこれで「マクロの記録」が完了しました!

マクロを実行すると…

では、さっそく記録したマクロを実行してみましょう!

マクロを実行するには、「開発」タブの中にある「マクロ」というボタンをクリックします。(下図の赤矢印の箇所です)

画像14

すると、実行できるマクロの一覧が以下のように表示されます。

画像15

これで「実行」ボタンをクリックすると、マクロが実行されます。

試しに、先ほどの文献リストをもう一度イタリックに変換させてみたいと思います。

マクロ実行前はこうです。

画像16

マクロ実行後はこうなります。

画像17

おーっ、ちゃんと実行されています!

検索&置換機能で実現できることであれば、「マクロの記録」を使うと、こんなふうに簡単に自動実行できるマクロを作成することができます。

ここで記録したマクロは、他のWordファイルでも使うことができるので、「マクロの記録」は一度だけでOKです。

マクロの中身を見てみよう

ちなみに、今回Wordが自動的に記述してくれたマクロの中身は、こんな感じになっています。

Sub change_italic()
   Selection.Find.ClearFormatting
   Selection.Find.Replacement.ClearFormatting
   Selection.Find.Replacement.Font.Italic = True
   With Selection.Find
       .Text = "◎(*)◎"
       .Replacement.Text = "\1"
       .Forward = True
       .Wrap = wdFindContinue
       .Format = True
       .MatchCase = False
       .MatchWholeWord = False
       .MatchByte = False
       .MatchAllWordForms = False
       .MatchSoundsLike = False
       .MatchFuzzy = False
       .MatchWildcards = True
   End With
   Selection.Find.Execute Replace:=wdReplaceAll
End Sub

このうち、「Selection.Find.Replacement.Font.Italic = True」がイタリックに変換するコードです。「.Text = "◎(*)◎"」が検索する文字列で、「.Replacement.Text = "\1"」が置換後の文字列です。「Selection.Find.Execute Replace:=wdReplaceAll」が「すべて置換する」という操作に対応しています。

ちなみに、コードの無駄を省いて、スッキリさせるとこんな感じです。

Sub change_italic()
  With Selection.Find
      .Replacement.Font.italic = True
      .Text = "◎(*)◎"
      .Replacement.Text = "\1"
      .Forward = True
      .Wrap = wdFindContinue
      .Format = True
      .MatchCase = False
      .MatchWholeWord = False
      .MatchByte = False
      .MatchAllWordForms = False
      .MatchSoundsLike = False
      .MatchFuzzy = False
      .MatchWildcards = True
      .Execute Replace:=wdReplaceAll
  End With
End Sub

結び

以上、マクロの記録について、簡単にご紹介してきました。検索&置換機能と組み合わせて使うと、まだまだ原稿執筆に役立つ使い方ができそうです。

ご興味のある方は、ぜひいろいろと試してみてくださると幸いです。

※ 本記事のイメージ図として、いらすとや(https://www.irasutoya.com/)のイラストを使用させていただきました。

この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
『人文×社会』の中の人
東京大学文学部の学部生・院生が創る新たな電子学術雑誌『人文×社会』の組版チームです。組版にまつわるこぼれ話を投稿していきます。 【公式サイト】https://jinbunxshakai.org/ 【Twitter】https://twitter.com/jinbunxshakai