Sub MyIndexesMarkEntry()
  Rem *----*----*    *----*----*    *----*----*    *----*----*
  Rem 選択文字列索引項目挿入処理
  Rem 作譜:Hitrock Camellia Shinopy
  Rem 言語:Word VBA
  Rem 機能...
  Rem   文書内にある太字の文字列を検索し、
  Rem   検索した文字列の索引項目を挿入する。
  Rem 注記...
  Rem   1. 太字の文字列を更に一旦[中抜き文字]書式を設定する。
  Rem   2. この処理後に、[索引の挿入]で索引を文書に挿入すること。
  Rem 履歴...
  Rem   第01版:2009/12/08:作成。
  Rem *----*----*    *----*----*    *----*----*    *----*----*
  '
  Selection.HomeKey Unit:=wdStory, Extend:=wdMove ' カーソル位置を文書の先頭まで移動。
  '
  With Selection.Find
    .ClearFormatting
    .Font.Bold = True ' 太字を検索。
    .Replacement.ClearFormatting
  End With
  With Selection.Find.Replacement.Font
    .Bold = True ' 太字に置換。
    .Outline = True ' 中抜き文字に置換。
  End With
  '
  With Selection.Find
    .Text = ""
    .Replacement.Text = ""
    .Forward = True
    .Wrap = wdFindContinue
    .Format = True
    .MatchCase = False
    .MatchWholeWord = False
    .MatchByte = False
    .MatchAllWordForms = False
    .MatchSoundsLike = False
    .MatchWildcards = False
    .MatchFuzzy = True
  End With
  Selection.Find.Execute Replace:=wdReplaceAll ' すべて置換。
  Rem *----*----*    *----*----*    *----*----*    *----*----*
  '
  Do
    ActiveWindow.ActivePane.View.ShowAll = True
    Application.Browser.Next ' 先の処理で検索した文字列へジャンプする。
    '
    Rem [中抜き文字]書式の文字列がなくなった場合は、索引項目を挿入を終了。
    If Selection.Range.Font.Outline = False Then Exit Do
    '
    Selection.Range.Font.Outline = False ' [中抜き文字]書式を設定解除。
    '
    Rem 選択した文字列の索引項目を挿入。
    ActiveDocument.Indexes.MarkEntry Range:=Selection.Range, Entry:=Selection.Range.Text, _
      EntryAutoText:=Selection.Range.Text, CrossReference:="", CrossReferenceAutoText:="", _
      BookmarkName:="", Bold:=False, Italic:=False, Reading:=""
    '
    ActiveWindow.ActivePane.View.ShowAll = False
    Selection.MoveRight Unit:=wdCharacter, Count:=2, Extend:=wdMove
    DoEvents
  Loop
  Rem *----*----*    *----*----*    *----*----*    *----*----*
  '
  Selection.HomeKey Unit:=wdStory, Extend:=wdMove ' カーソル位置を文書の先頭まで移動。
  ActiveWindow.ActivePane.View.ShowAll = False ' フィールドを非表示にする。
End Sub '  MyIndexesMarkEntry *----*----*    *----*----*    *----*----*    *----*----*

inserted by FC2 system