• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Word2010特定の名前を置き換えるマクロ)

Word2010特定の名前を置き換えるマクロ

このQ&Aのポイント
  • Wordの文章で特定の名前を置き換えるためのマクロについて紹介します。
  • マクロを使用すると、テキストボックスやヘッダフッタに記載された文字も含めて置換の対象とすることができます。
  • 具体的なコード例を示しています。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

[マクロの記録]は実行した機能をすべて記録するものではありません。 記録したものを実行しても、すべてのストーリーを対象にしません。 カーソルのあるストーリーのみに実行されるので、本文にある場合なら 本文のみが置換の対象になります。テキストボックス内へとカーソルを 置き記録したマクロを実行すれば、カーソルのある領域のみ置換をして その他のテキストボックスや本文などは対象になりません。 文書全体のテキストを置換したい場合は、以下のテキスト置換用マクロ などで対応します。 Sub AllReplaceText()  Dim oStory As Range  Dim Ftext As String  Dim Rtext As String  '検索する文字列  Ftext = "山田"  '置換後の文字列  Rtext = "田中"  Application.ScreenUpdating = False  ' 本文領域にあるテキストを置換。  For Each oStory In ActiveDocument.StoryRanges    With oStory.Find     .Text = Ftext    End With    With oStory      Do While .Find.Execute = True       .Text = Rtext       .Collapse wdCollapseEnd      Loop    End With     ' 本文領域以外のストーリーが存在する場合の置換。  While Not (oStory.NextStoryRange Is Nothing)    Set oStory = oStory.NextStoryRange    With oStory.Find      .Text = Ftext    End With    With oStory      Do While .Find.Execute = True       .Text = Rtext       .Collapse wdCollapseEnd      Loop    End With   Wend  Next  Application.ScreenUpdating = True End Sub ' ただし、ヘッダー・フッターにあるテキストボックスなどは対象外 参考にした関連情報 http://support.microsoft.com/kb/409098/ja

関連するQ&A

専門家に質問してみよう