マーティンは最近、会社の法務チームから、会社が作成したドキュメントに表示したくないフレーズのリストを受け取りました。

たとえば、ほとんどの場合、「解決策は」というフレーズは、代わりに「解決策が意図されている」である必要があります。マーティンは、おそらく文法チェッカーを使用して、この新しいフレーズのリストをWordで自動的にチェックしてフラグを立てる方法があるかどうか疑問に思います。

残念ながら、文法チェッカーはそれを行いません。 Wordでは、独自のフレーズを追加して、文法チェッカーがそれらを「チェック」できるようにする方法はありません。

ただし、2つの解決策が必要なようです。1つは新しいドキュメントを作成するときに機能し、もう1つは既存のドキュメントをチェックするために使用できます。 「作成時」のソリューションは実際には非常に簡単です。必要なのは、オートコレクトを使用して問題のあるフレーズを自動的に変更することだけです。

。 [Wordのオプション]ダイアログボックスを表示します。 (Word 2007では、[Office]ボタンをクリックし、[Wordのオプション]をクリックします。Word2010以降のバージョンでは、リボンの[ファイル]タブを表示して、[オプション]をクリックします。)

。ダイアログボックスの左側にある[校正]をクリックします。

。 [オートコレクトオプション]をクリックします。 Wordは[オートコレクト]ダイアログボックスを表示します。

(図1を参照)

。 [置換]ボックスに、問題のあるフレーズを入力します。

。 [ウィズ]ボックスに優先フレーズを入力します。

。 [追加]ボタンをクリックします。

。残りの問題のあるフレーズごとに、手順4〜6を繰り返します。

。 [閉じる]をクリックしてダイアログボックスを閉じます。

これで、ドキュメントを入力するときに、問題のフレーズが入力され、そのフレーズの後のスペースまたは句読点が押されると、Wordはそのフレーズを優先フレーズに自動的に置き換える必要があります。

もちろん、オートコレクトのアプローチは既存のドキュメントには役立ちません。また、テキストのブロックを他のドキュメントからコピーして現在のドキュメントに貼り付ける場合にも役立ちません。そのような場合は、別のアプローチが必要です。最も簡単なのは、Wordの検索と置換機能を使用して、問題のあるフレーズを探し、それを優先フレーズに置き換えるかどうかを決定することです。修正する必要のあるフレーズが少ない場合、これはうまく機能します。

フレーズのリストがかなり長い場合は、マクロを使用して違反をマークすることを検討してください。これが簡単なアプローチです。

Sub ReplacePhrases()

Dim sBadPhrase(19) As String     Dim sGoodPhrase(19) As String     Dim iCount As Integer     Dim J As Integer

iCount = 6   ' Set to number of phrases

sBadPhrase(1) = "first offensive phrase"

sBadPhrase(2) = "second offensive phrase"

sBadPhrase(3) = "third offensive phrase"

sBadPhrase(4) = "fourth offensive phrase"

sBadPhrase(5) = "fifth offensive phrase"

sBadPhrase(6) = "sixth offensive phrase"



sGoodPhrase(1) = "first preferred phrase"

sGoodPhrase(2) = "second preferred phrase"

sGoodPhrase(3) = "third preferred phrase"

sGoodPhrase(4) = "fourth preferred phrase"

sGoodPhrase(5) = "fifth preferred phrase"

sGoodPhrase(6) = "sixth preferred phrase"



For J = 1 to iCount         With Selection.Find             .ClearFormatting             .Replacement.ClearFormatting             .Text = sBadPhrase(J)

.Replacement.Text = sGoodPhrase(J)

.Forward = True             .Format = False             .MatchWholeWord = False             .MatchCase = False             .MatchWildcards = False             .Wrap = wdFindContinue         End With         Selection.Find.Execute Replace:=wdReplaceAll     Next J End Sub

このマクロは、sBadPhrase配列に格納されている値を、sGoodPhrase配列に格納されているフレーズに一括置換します。あなたがする必要があるのはあなたのフレーズで配列をセットアップし、あなたが定義したフレーズの数と等しくなるようにiCountを変更することです。

(19フレーズを超える場合は、2つの配列の宣言も変更して、十分な大きさになるようにする必要があります。)

注:

このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

link:/ wordribbon-WordTipsMacros [ここをクリックして、新しいブラウザタブでその特別なページを開きます]

_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。

(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(5140)は、Microsoft Word 2007、2010、2013、2016、2019、およびOffice365のWordに適用されます。