ワードでの「セクション区切りがある段落の段落番号を取得」は、「カーソルのある段落の段落番号を取得」する方法を応用することで実現できます。
With ActiveDocument.Sections
Dim j As Long 'セクション番号
Dim varSection() As Variant 'セクション区切りの段落番号の配列
ReDim Preserve varSection(.Count - 1)
'すべてのセクションを対象
For j = 1 To .Count - 1
'セクション配列にセクション区切りのある段落番号を入力する
varSection(j) = ActiveDocument.Range(0, .Item(j).Range.End).Paragraphs.Count
'アイテム0にセクション区切りの存在を記録する
varSection(0) = 1
Next
End With
「カーソルのある段落の段落番号を取得」は、これでできます。
Range(0, Selection.End).Paragraphs.Count
Word VBAでカーソルが何番目の段落かを調べる:ワードマクロ・Word VBAの使い方/段落・パラグラフ
カーソルのある段落が、何番目の段落なのかを調べるWord VBAのコードをご紹介しています。
「Selection」の代わりに「Section」(ややこしい!)を入れてやれば、「セクション区切りがある段落番号が取得できます」
Range(0, Sections(1).Range.End).Paragraphs.Count
(この例は、最初のセクション区切りの場合です。)
あとは、For Nextで繰り返せば、すべてのセクション区切りのある段落番号を取得することができます。
本サイトで紹介している「VA公用文」では、これを使ってセクションごとに見出し番号を振り直す処理を実現しています。
コメント