首页 文章

VBA代码读取word文档页脚

提问于
浏览
0

我有一个完整的word文档表单的文件夹,我有一个excel文件,将表单上的所有答案读入电子表格中的不同工作表 . 导出数据的工作表取决于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

1 回答

  • 0

    经过一段时间的游戏和Google之后,我发现这个页面帮助我解决了我的问题https://msdn.microsoft.com/en-us/library/office/aa221970(v=office.11).aspx

    我改变了我的代码如下:

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

    虽然我不确定为什么之前的版本没有工作,因为第一页上有一个页脚 .

相关问题