トーマスは、他の人のためにドキュメントを公開する前に削除する必要があるアイテムを含む大きなドキュメントを持っています。削除する必要のあるドキュメントの部分が選択され、公開する前に削除する必要があることを示すコメントが付けられました。 Thomasは、この方法でコメントされたすべてのテキストをすばやく見つけて置き換え、削除したいと考えています。

検索と置換を使用して、彼ができることはコメントを見つけることだけです。彼は、コメントがテキストを削除する必要があることを示すものであるかどうかを判断する方法も、強調表示された実際のドキュメントテキストを削除する方法も理解していません。

これは多くのステップを伴うため、かなり複雑なタスクのように聞こえます。コメントを見つける必要があります。コメントの本文を調べて目的の文言と一致するかどうかを確認し、ドキュメント本文のコメント付きテキストを削除してから、コメント自体を削除する必要があります。これはマクロの仕事です。

幸い、ドキュメント内のすべてのコメントには、VBAを使用してコメントグループからアクセスできます。各コメントをステップスルーして、コメント(およびコメントが参照するテキスト)を削除する必要があることを示す「トリガーテキスト」が含まれているかどうかを確認できます。次の例では、コメントテキストにコメント内のどこかに「deletethis」という単語が含まれている場合、これがトリガーとして機能します。

Sub DeleteCommentsBaseText()

Dim c As Comment For Each c In ActiveDocument.Comments     If LCase(Trim(c.Range.Text)) Like "delete this" Then         c.Scope.Delete         c.DeleteRecursively     End If Next c End Sub

トリガーワードがコメントに含まれている場合、Scopeプロパティは削除されます。コメントの作成時に選択されたドキュメントテキストを示すのはこのプロパティです。次に、DeleteRecursivelyメソッドを使用して、実際のコメントを削除します。 (DeleteRecursivelyメソッドはWord 2013で追加されました。以前のバージョンでは、代わりにDeleteメソッドを使用する必要があります。)

マクロを実行すると非常に高速であり、変更を元に戻すことはできないことを理解してください。代わりに、削除するコメントとテキストをもう少し制御したい場合は、ワークフローを再考することをお勧めします。変更の追跡を使用する場合、コメントを配置する人は誰でも、ドキュメントテキストに削除のマークを付けることができます。次に、ドキュメントを完成させる前に、[変更の追跡]をオフにし、各変更をステップ実行して、受け入れるかどうかを決定できます。上記のマクロほど高速ではありませんが、より細かく制御できます。

注:

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

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

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

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