2

単語ドキュメントを開いてデータを入力するプログラムがあります。フッターにはいくつかのデータがありますが、新しいページを作成すると更新されるフッターのページ数も必要です。これはフィールドコードで可能です。 、しかし、フィールドコードを単語形式のC#で入力する方法がわかりません。

私は次のようなものを使用したいと思います:

Phone: 00000000 mail: somemail@mail  Page {PAGE} of {NUMPAGE}.

フッターのコード

Microsoft.Office.Interop.Word.Range footer = section.Footers[Microsoft.Office.Interop.Word.WdHeaderFooterIndex.wdHeaderFooterPrimary].Range;
footer.Text = ad.contactinfo(path, gud);

ドキュメントにフィールドコードを挿入する方法はありますか、それとも他の解決策がありますか?

4

2 に答える 2

4

解決しました:D

doc.ActiveWindow.ActivePane.View.SeekView = Microsoft.Office.Interop.Word.WdSeekView.wdSeekCurrentPageFooter;
Object oMissing = System.Reflection.Missing.Value;
doc.ActiveWindow.Selection.TypeText("some text \t Page ");
Object TotalPages = Microsoft.Office.Interop.Word.WdFieldType.wdFieldNumPages;
Object CurrentPage = Microsoft.Office.Interop.Word.WdFieldType.wdFieldPage;
doc.ActiveWindow.Selection.Fields.Add(doc.ActiveWindow.Selection.Range, ref CurrentPage, ref oMissing, ref oMissing);
doc.ActiveWindow.Selection.TypeText(" of ");
doc.ActiveWindow.Selection.Fields.Add(doc.ActiveWindow.Selection.Range, ref TotalPages, ref oMissing, ref oMissing);

少し少ないコードでホッピングしていましたが、機能します!

于 2013-03-18T09:16:13.030 に答える
0

1つのオプションは、単語でマクロを作成することです。C#では、マクロを実行できます。私の意見では、これは最も簡単な方法のようです。必要な数のマクロを作成できるからです。それが機能するときは、マクロを作成するだけでよく、コードを編集する必要はありません。これがどのように機能するかについての詳細は、このページを参照してください:Visual C#.NETから自動化を使用してExcelマクロを作成する方法。これはExcellの記事ですが、原則は同じである必要があります。

于 2013-03-15T11:03:33.243 に答える