Home » ワードマクロ・Word VBAの使い方 » 段落・パラグラフ » Word VBAのParagraphs.First.Rangeとは

動作検証バージョン:64bit Windows 10 Pro + 32bit Word(バージョン2210 ビルド15726.20202 Microsoft Store)

「Paragraphs.First.range」
という検索でアクセスがあることに気がつきました。

Dim rng As Word.Range
Set rng = ActiveDocument.Paragraphs.First.Range

といったWord VBAのコードを、どこかでご覧になった方による検索でしょうか。

先頭の段落を取得するサンプルマクロ

複数の段落が存在するWord文書がアクティブな状態で、以下のWordマクロを実行してください。

Sub 先頭の段落を取得する()
 Dim par As Paragraph
 Set par = ActiveDocument.Paragraphs.First

 par.Range.Select
 MsgBox par.Range.Text
End Sub

1つ目の段落が選択され、その文字列がメッセージボックスに表示されます。

Word VBAにはFirst・Lastプロパティを持つコレクションがある

Word VBAのコレクションの中には、コレクションに含まれる先頭のオブジェクトを取得するためのFirstプロパティと、最後のオブジェクトを取得するためのLastプロパティの用意されているものがあります。

Paragraphsコレクションもその1つで、Paragraphs.Firstプロパティを使うと、1つ目の段落を表すParagraphオブジェクトを取得できます。

ですから先ほどの

Set par = ActiveDocument.Paragraphs.First

は、

Set par = ActiveDocument.Paragraphs.Item(1)

あるいは、

Set par = ActiveDocument.Paragraphs(1)

と書いても同じ結果になります。

Paragraph.Rangeで文字列範囲を表すRangeを取得

Paragraphs.Firstプロパティで、段落を表すParagraphオブジェクトを取得できるのですから、
「Paragraphs.First.range」
の「range」は、Paragraphオブジェクトに用意されているRangeプロパティです。

こちらについては、拙著『Excel VBAユーザーのためのWord VBA入門(1)』の、「6-3. ParagraphにSelectメソッドやTextプロパティはない」でも解説しています。


[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » 段落・パラグラフ » Word VBAのParagraphs.First.Rangeとは

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

検索


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

.