我在MS Word互操作中遇到問題。我使用的是VC++,但我也會接受C#中的建議。Word文檔中的頁腳頁碼
在使用SaveAs方法時,在頁腳中給出頁碼的Word文檔中,我得到一個隨機頁碼而不是正確的,任何人都可以幫助我。
我也嘗試使用PageNumbers.GetStartNumber和Range.GetInformation方法沒有運氣。
如何獲取Word中頁腳的實際頁碼?
我在MS Word互操作中遇到問題。我使用的是VC++,但我也會接受C#中的建議。Word文檔中的頁腳頁碼
在使用SaveAs方法時,在頁腳中給出頁碼的Word文檔中,我得到一個隨機頁碼而不是正確的,任何人都可以幫助我。
我也嘗試使用PageNumbers.GetStartNumber和Range.GetInformation方法沒有運氣。
如何獲取Word中頁腳的實際頁碼?
謝謝,我能用這段代碼解決它。在VC++中
Selection oSelection = m_oApp.GetSelection();
Sections ss = oSelection.GetSections();
Section s = ss.GetFirst();
HeadersFooters hf = s.GetHeaders();
HeaderFooter hfItem = hf.Item(1);
PageNumbers ps = hfItem.GetPageNumbers();
//to get the First pageNumber
long nNo = ps.GetStartingNumber();
HeadersFooters footers = s.GetFooters();
HeaderFooter footer = footers.Item(1);
Range r = footer.GetRange();
//to get the First page footer text
CString strFooterText = r.GetText();
這不是C#或VC++,但VBA版本會這樣。頁碼可能是一個字段,所以使用選擇,如果你有。
Public Sub GetPageNumber()
On Error GoTo MyErrorHandler
Dim currentDocument As Document
Set currentDocument = ActiveDocument
Debug.Print Selection.Sections(1).Footers(wdHeaderFooterPrimary).Range.Text 'Or...
Debug.Print Selection.Sections(1).Footers(wdHeaderFooterPrimary).Range.Fields(1).Result
Exit Sub
MyErrorHandler:
MsgBox "GetPageNumber" & vbCrLf & vbCrLf & "Err = " & Err.Number & vbCrLf & "Description: " & Err.Description
End Sub