PerlでWin32::OLEを使用してさまざまなプロパティ(ページ数、作成者など)を取得しようとしている(一連の)Wordドキュメントがあります。
print $MSWord->Documents->Open($name)->
BuiltInDocumentProperties->{"Number of pages"}->value . " \n";
これは4ページを返します。ただし、ドキュメントの実際のページ数は9です。最初のセクションのページ数は4です。ドキュメントの合計ページ数が必要です。
Word VBA内で、次のことを行う場合:
MsgBox ActiveDocument.BuiltInDocumentProperties("Number of pages")
これにより、9が表示されます。[プロパティ/統計]ページに表示されるページ数は9です。
再計算を強制する必要がありますか?OLEライブラリに再計算を強制するように依頼する方法はありますか、それともすべてのセクションを個別に処理する必要がありますか?
XP、Word 2007、ActivePerlv5.10.0を使用しています。