2

C#で相互運用機能を使用してWord文書のセクションのページ数を見つけようとしています。

主な目標は、ヘッダーが表示されているかどうかを確認することです。(たとえば、ドキュメントは1ページしかないDifferentFirstpageHeaderFooterため、有効になっているため、wdHeaderFooterPrimary存在しますが、技術的には表示されません(1ページしかなく、2ページ以上ではないため))したがって、これを行う方法を理解するための別の方法を見つけることができれば、私も大丈夫です。

現在、WdInformation.wdActiveEndPageNumberドキュメントにセクションが1つしかない場合は機能しますが、2つある場合は、2番目のセクションの処理を行っているので、wdActiveEndPageNumberセクション1を含む合計ページ数がわかります。

var section = headerFooter.Parent as Section;
int numOfPages = section.Range.Information[WdInformation.wdActiveEndPageNumber];
4

1 に答える 1

4

このためのC#はありませんが、VBA構文を使用すると、「セクションn」に必要なものは次のようになります。

a。それならn = 1あなたは

theDocument.sections[1].Range.Information[WdInformation.wdActiveEndPageNumber]

b。n > 1次に、セクションnが存在することを確認した場合は、次を参照してください。

theDocument.sections[n].Range.Information[WdInformation.wdActiveEndPageNumber]-
theDocument.sections[n-1].Range.Information[WdInformation.wdActiveEndPageNumber]

また、セクションnの最後のページに連続したセクション区切りがある場合、ケース(b)は0を返す可能性があることに注意してください。あなたが持っているヘッダーに関してそれが何を意味するのかはわかりませんが、それはあなたがちょうど最初のページのヘッダーを持っていることを意味することを願っています。

于 2012-10-21T14:32:14.580 に答える