「Paragraphs.First.range」
という検索でアクセスがあることに気がつきました。
Dim rng As Word.Range Set rng = ActiveDocument.Paragraphs.First.Range
といったWord VBAのコードを、どこかでご覧になった方による検索でしょうか。
先頭の段落を取得するサンプルマクロ
複数の段落が存在するWord文書がアクティブな状態で、以下のWordマクロを実行してください。
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とは