ドキュメント内のすべてのテキストボックスの削除(Microsoft Word)
他の人のドキュメントで多くの作業を行う場合は、それらのドキュメントのテキストボックスを削除する必要がある場合があります。ドキュメントにテキストボックスが1つまたは2つしかない場合は、それらを選択して削除することはそれほど難しくありません。ただし、30、40、またはそれ以上のテキストボックスがある場合はどうなりますか?
それらを個別に削除すると、すぐに面倒になる可能性があります。
考えられる解決策の1つは、「ブルートフォース」方式です。次の手順に従ってください:
。ドキュメントで、Ctrl + Aを押します。ドキュメント全体が選択されます。
。 Ctrl + Cを押します。ドキュメントはクリップボードにあります。
。新しい空白のドキュメントを開きます。
。 [編集]メニューから[形式を選択して貼り付け]を選択します。 Wordは、[形式を選択して貼り付け]ダイアログボックスを表示します。 (図1を参照)
。フォーマットのリストで、[フォーマットされていないテキスト]を選択します。
。 [OK]をクリックします。
テキストボックスを除いたドキュメントテキストが新しいドキュメントに追加されました。このアプローチの明らかな欠点は、元のドキュメントの他のフォーマットも失われ、ドキュメント全体を再フォーマットする必要があることです。 (これは力ずくの方法だと言いました。)
テキストボックスのみを削除したい場合、最も簡単な解決策はマクロを使用することです。次のマクロは、ドキュメント内のすべてのテキストボックスをすばやく削除します。
Sub RemoveTextBox1() Dim shp As Shape For Each shp In ActiveDocument.Shapes If shp.Type = msoTextBox Then shp.Delete Next shp End Sub
このマクロはすべてのテキストボックスとその内容を削除することに注意してください。つまり、テキストの配置にテキストボックスが使用されている場合、そのテキストボックス内のテキストは、テキストボックス自体とともに削除されます。
テキストボックスを削除する前に、テキストボックスからドキュメントにテキストを転送する場合は、上記のマクロを少し変更すると機能します。
Sub RemoveTextBox2() Dim shp As Shape Dim oRngAnchor As Range Dim sString As String For Each shp In ActiveDocument.Shapes If shp.Type = msoTextBox Then ' copy text to string, without last paragraph mark sString = Left(shp.TextFrame.TextRange.Text, _ shp.TextFrame.TextRange.Characters.Count - 1) If Len(sString) > 0 Then ' set the range to insert the text Set oRngAnchor = shp.Anchor.Paragraphs(1).Range ' insert the textbox text before the range object oRngAnchor.InsertBefore _ "Textbox start << " & sString & " >> Textbox end" End If shp.delete End If Next shp End Sub
このマクロが完了すると、「テキストボックスの開始」を検索できます。以前はドキュメントから削除されたテキストボックスにあったテキストの先頭に移動します。次に、テキストを編集して、必要に応じて表示することができます。
注:
このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
link:/ wordribbon-WordTipsMacros [ここをクリックして、新しいブラウザタブでその特別なページを開きます]
。
_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。
(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(1690)は、Microsoft Word 97、2000、2002、および2003に適用されます。Wordのリボンインターフェイス(Word 2007)用のこのヒントのバージョンを見つけることができます。以降)ここ:
link:/ wordribbon-Removing_All_Text_Boxes_In_a_Document [ドキュメント内のすべてのテキストボックスの削除]
。