すべてのフィールドの削除(Microsoft Word)
ドキュメント(特に他の人が作成した長いドキュメント)を操作しているときは、ドキュメントのすべてのフィールドを削除する必要がある場合があります。これをどのように行うかに対する答えは、フィールドを「削除」することの意味にほぼ完全に依存します。
フィールドを削除して、フィールドの結果を表すプレーンテキストに置き換える場合は、ドキュメント全体を選択して(Ctrl + A)、Ctrl + Shift + F9を押してフィールドを「リンク解除」します。フィールドがあったすべての場所で、フィールドが削除され、フィールドの結果に置き換えられます。
すべてのフィールドを削除したいだけで、それらが何かに置き換えられることを気にしない場合は、Wordの検索および置換機能を使用できます。次の手順に従ってください:
。 Alt + F9を押します。これにより、これらのフィールドの結果ではなく、ドキュメント内のすべてのフィールドコードが表示されます。
。 Ctrl + Hを押します。 Wordは、[検索と置換]ダイアログボックスの[置換]タブを表示します。 (図1を参照)
。 [検索する文字列]ボックスに、検索するものとして^ dと入力します(必ず小文字のdを使用してください)。これは、Wordが「任意のフィールド」として理解するコードです。
。 [置換]ボックスが空であることを確認してください。
。 [すべて置換]をクリックします。
これで、ドキュメントのすべてのフィールドが削除されます。この方法でフィールドを頻繁に削除する必要がある場合は、タスクを処理するマクロを作成するのが理にかなっています。以下は、ドキュメントのすべての部分を調べてすべてのフィールドを削除する、単純で短いマクロです。
Sub DeleteFields() Dim rng As Range For Each rng In ActiveDocument.StoryRanges With rng.Fields While .Count > 0 .Item(1).Delete Wend End With Next End Sub
もちろん、マクロを linkクイックアクセスツールバーまたはショートカットキーに割り当てて、できるだけ早く実行できるようにすることもできます。
ドキュメントに複数のテキストボックスがある場合、このマクロはメインドキュメントと最初のテキストボックスからのみフィールドを削除することに注意してください。 (理由を聞かないでください。Wordでは奇妙なようです。)最初のテキストボックス以外のフィールドがある場合は、別のマクロアプローチが必要になります:
Sub DeleteAllFields() Dim rng As Range Dim shp As Shape Dim TxtFrame As TextFrame For Each rng In ActiveDocument.StoryRanges With rng.Fields While .Count > 0 .Item(1).Delete Wend End With For Each shp In rng.ShapeRange Set TxtFrame = shp.TextFrame If Not TxtFrame Is Nothing Then If TxtFrame.HasText Then With TxtFrame.TextRange.Fields While .Count > 0 .Item(1).Delete Wend End With End If End If Next shp Next rng End Sub
注:
このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。
(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(10818)は、Microsoft Word 2007、2010、2013、および2016に適用されます。Wordの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。 linkDeleting AllFields。