Wordでマクロの使用を開始する方法

Wordでマクロの使用を開始する方法

Microsoft Wordで繰り返しタスクを実行するのにうんざりしていませんか?プログラム内に埋め込まれているのは、これらの仕事を手から離すことができる強力な自動化ツールです。私たちはマクロについて話しています。この機能はMicrosoftのVisualBasic for Applications(VBA)に依存していますが、コーディングのアイデアがあなたに大騒ぎを与えたとしても、それを使用することができます。





ボタンをクリックするだけで、Wordはアクションを記録し、何度でも再生できるマクロを生成します。冒険心があれば、マクロを簡単に変更して、さらに高度な自動化を行うことができます。





ここでは、簡単ですが便利な例を1つ紹介します。Wordの検索と置換機能を自動化する方法です。





マクロの記録

この例では、あなたは骨董品歯科用器具保存協会の尊敬されている会長です。歴史的な入れ歯などに関するWord文書が数十あり、そのすべてに社会の名前が目立つように記載されています。その後、突然、理事会は名前をDental Antiques PreservationLeagueに変更することに投票しました。ここで、ドキュメントを更新する簡単な方法が必要です。

新しい空白のドキュメントから開始することも、既存のドキュメントを開くこともできます。まだ行っていない場合は、[開発者]タブを有効にする必要があります。



に移動 ファイル>オプション>リボンのカスタマイズ 。右側、下 メインタブ 、確認してください デベロッパー オプション。 [OK]を選択して終了します。

Windows10のスリープ設定が機能しない

それでは、マクロを作成しましょう。





  1. クリック 開発者>マクロの記録
  2. マクロに名前を付けるように求められます。 ChangeSocietyNameまたはその他の適切な名前を入力します。マクロに名前を付けるときは、スペース、ピリオド、感嘆符、特殊文字を避けてください。そうしないと、エラーメッセージが表示されます。数字を使用できますが、最初の文字は文字である必要があります。
  3. マクロをボタンやキーボードショートカットに割り当てることができますが、これは必須ではありません。ボタンを選択すると、Wordでクイックアクセスツールバーにボタンを追加できます。マクロの簡単な説明を追加することもできます。
  4. クリック わかった 、そしてWordはあなたの行動を記録します。打つ Ctrl + H 育てる 検索して置換 ダイアログ。
  5. FindでAntiqueDental Appliances for the Preservation for the Preservationに、ReplaceでDental Antique PreservationLeagueに参加してください。
  6. クリック すべて置換 検索と置換操作を実行します。これは、記録したい唯一のアクションです。マクロが実際にテキストを置き換えるかどうかは関係ありません。ポイントは、他のドキュメント用に保存することです。
  7. これは重要です:クリック 開発者>記録を停止します 。それ以外の場合、マクロには後続のすべてのアクションが含まれます。

それでは、あなたの手仕事を見てみましょう。社会の名前を含む文書を開きます。クリック 開発者>マクロ 。 ChangeSocietyNameをダブルクリックすると、Wordは自動的に検索と置換操作を実行します。

ヒント: マクロを記録するときに、記録したくないアクションを実行する必要がある場合があります。たとえば、テキストを手動で入力するのではなく、コピーして[検索と置換]ダイアログに貼り付けることができます。問題ありません:クリックするだけです 開発者>録音の一時停止 、テキストをコピーして貼り付け、[ 開発者>レジュメレコーダー 。その後、上記のようにマクロ記録を完了することができます。





ここではMicrosoftWordに焦点を当てましたが、次のこともできます。 マクロを使用してExcelの生産性を向上させる 。また、MicrosoftOneNoteには多くの時間節約マクロがあります。

コードに飛び込む

次に、新しいWordマクロについて詳しく説明します。に移動 開発者>マクロ 、ただし、マクロをダブルクリックする代わりに、マクロを選択してクリックします 編集 。これにより、VBAアプリケーションを構築するための自己完結型の環境であるVisualBasicエディターが開きます。

気が遠くなるように見えるかもしれませんが、メニューとほとんどのパネルは無視してかまいません。代わりに、コードを含むウィンドウに注目してください。ご覧のとおり、Wordは検索と置換を実行するマクロを作成しました。


Sub ChangeSocietyName()
'
' ChangeSocietyName Macro
' Rename Society for the Preservation of Antique Dental Appliances
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = 'Society for the Preservation of Antique Dental Appliances'
.Replacement.Text = 'Dental Antiques Preservation League'
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub

ここで何が起こっているのか説明しましょう。

最初の行のサブルーチンはサブルーチンの略で、単独で、またはより大きなVBAアプリケーションの一部として実行できる小さなプログラムです。一重引用符が前に付いている行はコメント用です。引用符は、VBAにこれらの行のステートメントを無視するように指示します。

virtualboxにarchlinuxをインストールする方法

次に、コードの要点に到達します。それを実行するコードは 検索して置換 手術。ご覧のとおり、引用符で囲まれたテキストと置換テキストを含め、[検索と置換]ダイアログの各オプションの値を指定します。 NS Selection.Find.Execute 終わり近くのコマンドは、[すべて置換]ボタンをクリックするのと同じです。

マクロの改造

マクロを使用するために、コードをいじったり、見たりする必要はありません。ただし、飛び込みたい場合は、この機能をさらに活用できます。たとえば、マクロを記録するときにタイプミスをしたとします。再記録する代わりに、VisualBasicにアクセスして修正することができます。

マクロを微調整してより便利にすることもできます。これをここで行います。検索と置換を手動またはマクロで実行すると、Wordは検索と置換のテキストを記憶します。次に[検索と置換]ダイアログを開くと、次のようになります。

クリーンなダイアログボックスが表示されるように、値をクリアすることをお勧めします。これは2番目のマクロで行いますが、今回はVisualBasicで直接行います。

  1. Visual Basicエディタで、最初の行からEndSubまでのサブルーチン全体を選択します。打つ Ctrl + C それをコピーします。
  2. End Subの下にカーソルを置き、 Ctrl + V 。サブルーチンを複製しました。
  3. 名前をChangeSocietyNameからClearFindReplace(または他の適切な名前)に変更します。重複した名前でマクロを実行しようとすると、VBAがエラーメッセージを生成するため、これは重要です。
  4. の中に 。文章Replace.Text 値、テキストを削除しますが、引用符は残します。基本的に、Wordに何も見つけず、何にも置き換えないように指示しますが、それらの値もクリアします。

結果は次のようになります。


Sub ClearFindReplace()
'
' ClearFindReplace Macro
' Clear Text from Find and Replace dialog
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ''
.Replacement.Text = ''
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub

次に、ChangeSocietyNameマクロに戻ります。検索と置換のコードの下、ただしEnd Subの前に、ClearFindReplaceと入力します(末尾に括弧はありません)。

そうです。作成したコードをすべて入力する必要はなく、マクロの名前だけを入力する必要があります。


Sub ChangeSocietyName()
'
' ChangeSocietyName Macro
' Rename Society for the Preservation of Antique Dental Appliances
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = 'Society for the Preservation of Antique Dental Appliances'
.Replacement.Text = 'Dental Antiques Preservation League'
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
ClearFindReplace
End Sub

WordがChangeSocietyNameを実行すると、最初に元の検索と置換関数が実行されます。次に、ClearFindReplaceを2番目のマクロを実行するコマンドとして解釈します。

VBAでさらに前進

ご覧のとおり、Wordのマクロ記録機能は、無数の方法で時間を節約するのに役立ちます。マクロを作成してほとんどすべての操作を自動化できます。また、Visual Basicエディターでは、マクロを微調整したり、1つのマクロを別のマクロに埋め込んだり、複数のマクロを次々に実行するサブルーチンを作成したりできます。

VBAは本格的なプログラミング言語であるため、変数、ループ、条件文などを使用して、サブルーチンをより大きなアプリケーションに組み込むことができます。また、WordでVBAの基本を学んだら、同じ知識の多くをMicrosoftExcelとAccessでマクロを作成するために適用できます。

不和でサーバーを見つける方法

さらに詳しくは、コードの整理方法やバグの処理方法など、VBAの規則とVisualBasicエディターについて詳しく知る必要があります。ただし、ここで説明するような単純な機能を使い続けたい場合でも、生産性の向上に大いに役立つ可能性があります。

共有 共有 つぶやき Eメール ExcelでVBAマクロを作成するための初心者向けチュートリアル(およびなぜ学ぶ必要があるのか​​)

Excelを定期的に使用する場合は、VBAマクロを作成し、さらに多くの機能にアクセスする方法を学ぶ価値があります。

次を読む
関連トピック
  • 生産性
  • マイクロソフトワード
  • Microsoft Office 365
  • Microsoft Office 2016
  • MicrosoftOfficeのヒント
  • Microsoft Office 2019
  • マクロ
著者について スティーブンビール(6件の記事が公開されました)

Stephen Bealeは、サンフランシスコ地域を拠点とする長年のテクニカルライターです。彼は出版とグラフィックデザインにおけるコンピュータアプリケーションに関する多くの本を執筆しており、Macworldの元ニュースとレビューの編集者です。彼は現在、スチームパンク愛好家に人気のあるウェブサイトであるスチームパンクエクスプローラーを運営しています。

スティーブンビールのその他の作品

ニュースレターを購読する

ニュースレターに参加して、技術的なヒント、レビュー、無料の電子書籍、限定セールを入手してください。

購読するにはここをクリックしてください