余分な段落記号を削除する必要があるときに、ドキュメントで作業している場合があります。これは、ASCIIファイル、または元々別のワードプロセッサでフォーマットされている可能性のあるファイルを使用している場合に特に当てはまります。余分な段落記号を手動で削除するこのプロセスは、非常に時間がかかる場合があります。

このような状況に陥った場合は、このマクロに関心があるかもしれません。ドキュメントから余分な段落記号を削除します。完了すると、ドキュメント内に2つの段落記号が連続して表示されないようにする必要があります。

Sub ReplacePara()

Selection.HomeKey Unit:=wdStory     Selection.Find.ClearFormatting     With Selection.Find         .Text = "^p^p"

.Replacement.Text = ""

.Forward = True         .Wrap = wdFindContinue         .Format = False         .MatchCase = False         .MatchWholeWord = False         .MatchWildcards = False         .MatchSoundsLike = False         .MatchAllWordForms = False     End With     Selection.Find.Execute     While Selection.Find.Found         Selection.MoveRight Unit:=wdCharacter, Count:=1         Selection.TypeBackspace         Selection.MoveLeft Unit:=wdCharacter, Count:=2         Selection.Find.Execute     Wend End Sub

このマクロには2つの部分があります。最初の部分(Selection.Findメソッドに依存)は、Wordに組み込まれている検索および置換機能を使用して、2つの段落記号のすべてのインスタンスを順番に検索します。マクロは、連続する段落記号を置き換えません。それは単にそれらを見つけるだけです。

次に、マクロの2番目の部分が開始され、Selection.Find.Foundプロパティを使用して、2つの連続する段落記号の2番目が削除されます。

このアプローチが採用される理由は、残りの段落記号のフォーマットが正しいままになるためです。たとえば、2つの連続する段落記号が互いに異なる書式を使用している場合、最初の段落記号の書式は変更されません。連続する段落記号を単一の段落記号に単純に置き換えた場合、置き換えが完了したときに、希望どおりの書式が設定されていない可能性があります。

Selection.Find.Foundは、Whileループの「フラグ」として使用されることに注意してください。

このプロパティは、最新の検索操作のステータスを反映します。 Trueの場合、検索は成功しました。 Falseの場合、何も見つかりませんでした(したがって、変更するものはありません)。

注:

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

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

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