2015-10-20 181 views
0

我有一個完整的word文檔表單文件夾,我有一個excel文件,將表單上的所有答案讀入電子表格中的不同工作表。數據導出到的工作表取決於單詞文檔的文件名。VBA代碼讀取word文檔頁腳

目前工作正常。

但是,我現在需要它能夠考慮存儲在word文檔頁腳中的表單的版本號,但我不知道如何引用它。

當談到VBA時,我很小心,所以沒有多少嘗試。

我試過的VBA可以在下面找到,但毫不奇怪,不工作。

Sub ReadWordDoc(filenme As String) 

Dim Val As String 
Dim WrdDoc As Document 
Dim FormFieldCounter As Integer 

Dim version As String 

Set wordapp = CreateObject("word.Application") 
wordapp.Documents.Open filenme 
wordapp.ScreenUpdating = False 

Set WrdDoc = wordapp.Documents(filenme) 
wordapp.Visible = True 

version = WrdDoc.Sections(1).Footers(wdHeaderFooterFirstPage).Range.Text 

FormFieldCounter = 1 

If InStr(version, "5.00") Then 

    RowCounter = RowCounter + 1 

    Sheets("Version 5").Cells(RowCounter, FormFieldCounter) = filenme 

    Do While FormFieldCounter <= 125 
    WrdDoc.FormFields(FormFieldCounter).Select 
    Val = WrdDoc.FormFields(FormFieldCounter).result 
    Sheets("Version 5").Cells(RowCounter, FormFieldCounter + 1) = Val 

    FormFieldCounter = FormFieldCounter + 1 

    Loop 

    wordapp.Documents(filenme).Close SaveChanges:=wdDoNotSaveChanges 
    wordapp.Quit 

Else 

    'Do something else 

End If 


End Sub 
+0

什麼不行?你的版本變量是空的嗎? – DanL

+0

是的,我的版本變量是空的,但第一頁有一個頁腳。 –

回答

0

有一點的發揮和谷歌之後,我發現這個網頁,其中幫我解決我的問題 https://msdn.microsoft.com/en-us/library/office/aa221970(v=office.11).aspx

我改變我下面的代碼:

version = WrdDoc.Sections(1).Footers(wdHeaderFooterPrimary).Range.Text 

雖然我不知道爲什麼以前的版本沒有工作,因爲第一頁上有一個頁腳。

+1

第一個版本不起作用,因爲wdHeaderFooterFirstPage是爲Word中「特殊第一頁」頁眉/頁腳設置保留的。 – DanL