森には、「キーワード」が太字で記載されているドキュメントがあります。彼は、これらのキーワードを含むインデックスを作成したいと考えています。森は、すべての太字のフレーズを自動的にマークしてインデックスに表示する方法があるかどうか疑問に思います。

このタスクに取り組むには、いくつかの方法があります。おそらく最も簡単な方法は、WordのAutoMark機能を利用してインデックスエントリを作成することです。秘訣は、自分の単語(インデックスに入れたい単語)を独自のファイルに入れることです。これを行う簡単な方法は次のとおりです。

。インデックスを作成するドキュメントを開きます。

。新しい空白のドキュメントを作成します。

。ソースドキュメント(インデックスが必要なドキュメント)に戻ります。

。 Ctrl + Fを押します。 Wordは、[検索と置換]ダイアログボックスの[検索]タブを表示します。 (図1を参照)

。 [検索する文字列]ボックスが空で、挿入ポイントがその中にあることを確認してください。

。 Ctrl + Bを押します。 Wordは、太字のテキストを検索することを示します。

。 [見つかったすべてのアイテムを強調表示する]チェックボックスをオンにします。

。 [すべて検索]をクリックします。 Wordは、ドキュメント内の太字のすべての単語を強調表示します。

。 Ctrl + Cを押します。すべての単語がクリップボードにコピーされます。

。空白のドキュメントに切り替えます。

。 Ctrl + Vを押します。これで、すべての単語が以前は空白だったドキュメントに1行に1単語ずつ表示されます。

独自のドキュメント内の単語を使用すると、簡単に並べ替えて重複を探すことができます。重複を取り除き、1行に1つずつ、一意の単語やフレーズのリストを作成します。次に、単語をテーブルに変換する必要があります。それらを選択して、テーブル|を選択するだけです。変換|表へのテキスト。最終的には、単語とフレーズがその列に含まれる単一の列を持つテーブルになります。 (複数の列ができあがった場合は、変換を元に戻し、単語やフレーズのリストでタブ文字を探します。それらが見つかった場合は、変換をトリガーして別の列を追加するため、それらを削除します。)

すべての単語とフレーズを1つの列に入れて、最初の列のすぐ右側に2番目の列を追加します。 AutoMark機能を最適に機能させるには、最初の列にドキュメントでマークする単語またはフレーズを含める必要があり、2番目の列にそれらの単語およびフレーズをインデックスに表示する方法を含める必要があります。

たとえば、「集計結果」、「集計結果」、「集計応答」、「集計応答」など、同じフレーズの複数のバリエーションが最初の列にある場合があります。これらのそれぞれを「集計結果」というフレーズの下のインデックスに表示する場合は、そのフレーズを元の各フレーズの右側に配置します。左側の列の単語またはフレーズをインデックスで使用されている単語またはフレーズと同じにする場合は、左側の列から右側の列にコピーするだけです。

リストが完成したら、ドキュメントを保存します。次に、作成したものを使用して、次の方法で元のドキュメントを自動マークできます。

。 [挿入] | [挿入]を選択しますリファレンス|インデックスとテーブル。 Wordは、[インデックスとテーブル]ダイアログボックスを表示します。

。 [インデックス]タブが表示されていることを確認します。 (図2を参照)

。 [オートマーク]ボタンをクリックします。 Wordは、[ファイルの選択]ダイアログボックスを表示します。

。ダイアログボックスのコントロールを使用して、キーワードとフレーズのリストを含むファイルを選択します。

。 [開く]をクリックします。

それでおしまい。 Wordは、単語のリストを、ドキュメントでマークする必要があるものへの「ロードマップ」として使用します。オートマーク機能が完了すると、必要に応じてインデックスを作成できます。

必要に応じて、マクロを使用して、テキストが太字であるかどうかに基づいて、ドキュメント内のすべてのインデックスエントリをマークできます。次の例では、ドキュメントを検索して太字のテキストを探します。そのテキストを見つけると、そこにインデックスエントリを挿入します。

Sub InsertingIndexEntries()

Application.ScreenUpdating = False

'Go to the first page of the document     Selection.HomeKey wdStory, wdMove

'Set up the Find and Replace operation     Selection.Find.ClearFormatting     Selection.Find.Replacement.ClearFormatting     With Selection.Find         .Text = ""

.Replacement.Text = ""

.Forward = True         .Wrap = wdFindContinue         .Format = True         .MatchWildcards = False         .Font.Bold = True     End With

'Finds the bold text and inserts an index entry.

Do         Selection.Find.Execute         If Selection.Find.Found Then             'Checks if the Index field was selected             'This occurs if it does not contain any entries             If UCase(Selection.Range.Text) <> "NO INDEX ENTRIES FOUND." Then                 'Insert an index entry and use the text within                 'the selected range as the entry name                 ActiveDocument.Indexes.MarkEntry _                   Range:=Selection.Range, _                   Entry:=Selection.Range.Text, _                   EntryAutoText:=Selection.Range.Text, _                   CrossReference:="", _                   CrossReferenceAutoText:="", _                   BookmarkName:="", _                   Bold:=False, _                   Italic:=False, _                   Reading:=""

'Move past text that was found and the new index entry                 Selection.MoveRight wdCharacter, 1, wdExtend                 Selection.Collapse wdCollapseEnd             End If         End If     Loop While Selection.Find.Found

Application.ScreenUpdating = True     Application.ScreenRefresh End Sub

このマクロは、(おそらく)予期しない場所を含め、ドキュメント内のすべての太字のテキストを検出することを忘れないでください。たとえば、太字でフォーマットされた見出しがある場合、それらの見出しもインデックスにマークされます。さらに、マクロを複数回実行すると、太字のフレーズまたは単語ごとに複数のインデックスエントリが作成される可能性があります。複数回実行する必要がある場合は、再度実行する前に既存のインデックスフィールドを削除してください。

注:

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

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

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

Word(Word 2007以降)のリボンインターフェイスに関するこのヒントのバージョンは、次の場所にあります: