Home » ワードマクロ・Word VBAの使い方 » 段落・パラグラフ » Word VBAで検索して段落を選択する

Word VBAで検索して段落を選択する

動作検証バージョン:Windows 11 Home + 64bit Word バージョン 2505(ビルド18827.20128クイック実行)

「word vba find 段落選択」
といった検索キーワードでアクセスがありました。

Word VBAのFindオブジェクトを使って検索を行い、見つかったらその段落を選択したいということでしょうか。

検索して段落を選択するサンプルマクロ

以下のWordマクロを実行すると、「検索する文字列」をアクティブ文書の先頭から検索して、見つかったらその段落を選択します。

Sub Findで見つかったら段落を選択する()
 
 ActiveDocument.Range(0, 0).Select

 With Selection.Find
  .Text = "検索する文字列"
  If .Execute Then
   Selection.Paragraphs(1).Range.Select
  Else
   MsgBox "見つかりませんでした"
  End If
 End With

End Sub

サンプルマクロで行っている処理

全体の構造としては、ご紹介済みの記事のマクロと同じです。

Find.Executeメソッドを呼んで、戻り値が論理値のTrueだったときに、Selection.Paragraphsプロパティを使ってParagraphsコレクションを取得して、その1つ目のParagraphオブジェクトのRange.Selectメソッドを呼んでいます。

  If .Execute Then
   Selection.Paragraphs(1).Range.Select

「Selection.Paragraphs(1).Range.Select」といった階層構造については、拙著『Excel VBAユーザーのためのWord VBA入門(1): Document・Range・Selectionの基本編』で解説しているとおりです。

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » 段落・パラグラフ » Word VBAで検索して段落を選択する

「段落・パラグラフ」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.