「word vba find 段落選択」
といった検索キーワードでアクセスがありました。
Word VBAのFindオブジェクトを使って検索を行い、見つかったらその段落を選択したいということでしょうか。
検索して段落を選択するサンプルマクロ
以下のWordマクロを実行すると、「検索する文字列」をアクティブ文書の先頭から検索して、見つかったらその段落を選択します。
ActiveDocument.Range(0, 0).Select
With Selection.Find
.Text = "検索する文字列"
If .Execute Then
Selection.Paragraphs(1).Range.Select
Else
MsgBox "見つかりませんでした"
End If
End With
サンプルマクロで行っている処理
全体の構造としては、ご紹介済みの記事のマクロと同じです。
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の基本編』で解説しているとおりです。
- Newer:VBAで小数点以下の最大桁数を取得する
- Older:Filmoraでホワイトフェード・ホワイトアウトができない??
Home » ワードマクロ・Word VBAの使い方 » 段落・パラグラフ » Word VBAで検索して段落を選択する